修改表:

一般概述

通常,创建一个表,能搞定(做到)的事情,修改表也能做到。大体来说,就可以做到:

增删改字段:

增:alter  table  表名  add  [column]  字段名  字段类型  字段属性;

删: alter  table  表名  drop  字段名

改:alter  table  表名  change  原字段名  新字段名  新字段类型  新字段属性;

增删索引:

增删约束:

修改表选项:

数据操作:

增删改查插

增:全字段插入insert into login values();

Exp:insert into student values ('108','曾华','男','1997-09-01','95033');

Insert into student (sno,sname,ssex) values('108','曾华','男');

批量插入

Insert into student values

('108','曾华','男','1997-09-01','95033'),

('108','曾华','男','1997-09-01','95033'),

('108','曾华','男','1997-09-01','95033'),

('108','曾华','男','1997-09-01','95033'),

('108','曾华','男','1997-09-01','95033'),

('108','曾华','男','1997-09-01','95033');

查:select * from 字段;

删:delete from student

改:update student set 表头='改变的值',表头='改变的值' where 表头=值;

解决乱码问题:进入mysql后输入set character_set_client=gbk;set character_set_results=gbk;

数据查询语言DQL

基本查询

语法形式

select [all | distinct] 字段或表达式列表 [from子句] [where子句] [group by子句] [having子句] [order by子句] [limit子句];

解释说明:

select语句,作用是从“数据源”中,找出(取出)一定的数据,并作为该语句的返回结果(数据集)

数据源:

通常,数据源就是“表”。但:

也可以没有数据源,而是使用“直接数据”(或函数执行结果)。

     

可以给其加上字段(别)名:

可以用空格代替as

此语法,不可以没有from子句而使用表的字段:

而如果有表(from子句),则对字段同样可以进行“计算”:

还可以对表中的字段和“直接值”(或函数返回值)同时并列“取出”:

也可以使用“表名.字段名”的形式来指定某个表的某个字段(通常用于多表查询):

[all | distinct]

用于设定所select出来的数据是否允许出现重复行(完全相同的数据行)

all:允许出现——默认不写就是All(允许的)。

distinct:不允许出现——就是所谓的“消除重复行”。

from子句

就是指定数据的来源,其实就是“表”,可以是一个表名,也可以是多个表——多表查询了。

where子句

一个概念:where子句,相当于php或js中的if条件语句:其最终结果就是布尔值(true/false)

php:if($n  % 4 == 0 && $n % 100 != 0  || $n % 400 == 0 ){}

则:

where  true,  where  1;    where 1=1;  都表示true

where  false,  where  0;    where 1<>1;  都表示false

where中可用的运算符:

比较运算符: >   >=   <    <=   =(等于)   <>(不等于)

==(等于,mysql扩展),!=(不等于,mysql扩展)

逻辑运算符: and(与)  or(或)   not(非)

布尔值的判断方式:

布尔值:本质上,布尔值只是一位整数的“别名”,0表示false,非0表示true。

判断为true:   XX  is  true

判断为fale:   XX  is  false

XX应该是一个字段名,且其类型应该是一个整数。

实际应用中,布尔值判断很少用,因为可以直接使用数学大小。

空值的判断方式:

判断为null:   XX  is  null

判断为非空:   XX  is  not  null

XX应该是一个字段名

between语法:

XX  between  值1  and   值2;

含义:字段XX的值在值1和值2之间(含),相当于:XX >=值1 and XX<=值2;

in语法:XX in (1,2,3,4,5)        XX not in ()

Xx = 1 or  xx = 2 or xx =3...

XX  in (值1,值2,.......);

含义:XX等于其中所列出的任何一个值都算成立,相当于:

XX = 值1  or XX = 值2  or  XX = 值2

注意:其中的值1通常是“直接值”,但也可以是后面要学习的“查询结果值”

like语法(模糊查找):

语法形式: XX like  ‘要查找字符’;

说明:

1,like语法(模糊查找)用于对字符类型的字段进行字符匹配查找

2,要查找的字符中,有2个特殊含义的字符:

2.1:  %   其含义是:代表任意个数的任意字符

Exp: 王% 以王开头

2.2: _  王_  以王开头,两个字

跟随我在oracle学习php(18)的更多相关文章

  1. Oracle学习(18)【DBA向】:分布式数据库

    分布式数据库 什么是分布数据库? l数据物理上被存放在网络的多个节点上,逻辑上是一个总体. 分布式数据库的独立性 l分布数据的独立性指用户不必关心数据怎样切割和存储,仅仅需关心他须要什么数据. Ora ...

  2. Oracle 学习笔记 18 -- 存储函数和存储过程(PL/SQL子程序)

    PL/SQL子程序 它包含了函数和过程.此功能是指用户定义的函数.和系统功能是不同的.子程序通常完成特定的功能PL/SQL座.,能够被不同的应用程序多次调用.Oracle提供能够把PL/SQL程序存储 ...

  3. 跟随我在oracle学习php(19)

    Order by子句 形式: order  by  排序字段1  [排序方式],  排序字段2  [排序方式], ..... 说明: 对前面取得的数据(含from子句,where子句,group子句, ...

  4. 跟随我在oracle学习php(17)

    通用设定形式 定义一个字段的时候的类型的写法. 比如: create  table  tab1  (f1  数据类型 ); 数据类型: 类型名[(长度n)]  [unsigned]  [zerofil ...

  5. 跟随我在oracle学习php(16)

    数据库的增删改查 增:create  database  [if  not  exists ] 数据库名  [charset  字符集]  [collate  字符排序规则]: 说明: 1,if  n ...

  6. 跟随我在oracle学习php(15)

    开发环境 独立开发环境:组成 Windows/Linux php Apache MySQL 集成开发环境:phpstudy wamp xammp 关系数据库: SQL: Struct Query La ...

  7. 跟随我在oracle学习php(14)

    CSS3的@keyframes用法详解: 此属性与animation属性是密切相关的,关于animation属性可以参阅CSS3的animation属性用法详解一章节. 一.基本知识: keyfram ...

  8. 跟随我在oracle学习php(13)

    常用的css样式 [class~="col-6"]:选择我所有类名中包含有col-6独立单词的元素 [class*="col-"]:选择所有类名中含有" ...

  9. 跟随我在oracle学习php(12)

    DOM 文档对象模型 body:(什么时候)找到标签 操作标签找到标签:(都会返回一个js对象)document.getElementById() 通过iddocument.getElementsBy ...

随机推荐

  1. python 识别图片上的数字

    https://blog.csdn.net/qq_31446377/article/details/81708006 ython 3.6 版本 Pytesseract 图像验证码识别 环境: (1) ...

  2. 分布式事务、多数据源、分库分表中间件之spring boot基于Atomikos+XADataSource分布式事务配置(100%纯动态)

    本文描述spring boot基于Atomikos+DruidXADataSource分布式事务配置(100%纯动态),也就是增加.减少数据源只需要修改application.properties文件 ...

  3. FUTABA 13-ST-84GINK + DS3231 时钟

    收拾东西的时候又看到之前收拾的vfd相关的盒子,偶然又加的群,又买了两种屏试水. 大的买屏还送vfd变压器,这玩意卖的少,一个5块,不买血亏!不知道什么时候开始早已没有DIY是省钱这种观念了.草... ...

  4. dataguard主库删除归档日志后从库恢复的方法

    ------------------方法1在主库上使用备份的进行恢复丢失的归档日志-------------------------1.发现主库备份后删除了归档,但是这些归档从库还没应用,也没有传到从 ...

  5. markdown code test - markdown code test - markdown code test - markdown code test

    目录 主要代码 bottom cc 主要代码 <div class="tocCol1 js-toc"></div> <a>bc</a> ...

  6. Guitar Pro中如何添加与删除音轨

    Guitar Pro是一款专业的吉他打谱作曲软件,适合每一位热爱吉他并想进一步学习的大家.今天,我们一起来看看Guitar Pro软件写谱时音轨如何添加与删除. Guitar Pro能够同时支持虚拟音 ...

  7. TabLayout基本使用

    前言 Tablayout继承自HorizontalScrollView,可以用作顶部标签效果.底部导航栏效果.一般多与ViewPager一起使用. 想直接了解如何实现短下滑效果的请看:TabLayou ...

  8. 毕业设计 Makefile 编写

    一天下来,Makefile终于完成了,可以实现c文件和头文件不同目录,并将输出文件输出到其他如output目录,将执行文件和makefile文件并列: 源码如下: # ================ ...

  9. 利用Java手写简单的httpserver

    前言: 在看完尚学堂JAVA300中讲解如何实现一个最简单的httpserver部分的视频之后, 一.前置知识 1.HTTP协议 当前互联网网页访问主要采用了B/S的模式,既一个浏览器,一个服务器,浏 ...

  10. codeforce 337D Book of Evil ----树形DP&bfs&树的直径

    比较经典的老题 题目意思:给你一颗节点数为n的树,然后其中m个特殊点,再给你一个值d,问你在树中有多少个点到这m个点的距离都不大于d. 这题的写法有点像树的直径求法,先随便选择一个点(姑且设为点1)来 ...