SQL基本操作就是:CURD,即增删改查

根据操作对象的不同。分为三类:库操作,表操作,数据操作。

温馨提示:用符号[]括起来的内容,表示可选项;符号+,则表示连接的意思。

库操作

1,增加数据库

create database+数据库名称+[库选项];

库选项是用来约束数据库的,一般来设定字符集,有统一的编码格式,比如GBK和UTF-8等等。还有对校对集设定。

执行 create database hg;

mysql 语法策略配置 mysql sql 语法_数据库


2,查询数据库

查看全部就是;show databases;

(注意是有s的,我刚开始一直以为是database,沙雕了一阵)

查看部分就用like

比如 show databases like hg;

mysql 语法策略配置 mysql sql 语法_数据库_02


like是一个模糊查询,所以后面还可以有两种匹配形式

1,% :表示匹配多个字符;

2,_ :表示匹配单个字符;(若是数据库名称里面有 _可以用反斜杠线\_转义操作

3,更新数据库

数据库的修改仅限于修改库选项,即字符集和校对集。

基本语句:alter database +数据库名称+[库选项];

4,删除数据库

基本语法: drop database +数据库名称;

注意数据库的删除是不可逆的,所以一般不要随意删除数据库。

表操作

1,新增表

基本语法:

create table [if not exists] + 表名(

字段名称 数据类型,

……

字段名称 数据类型 /* 最后后一行,不需要加逗号 /
)[表选项];
if not exists 表示如果表名不存在,就执行创建代码,若是表名存在,就不执行创建代码。
因为任何的表都属于某个数据库,所以在创建表的时候,要指出所属的数据库,
1,显式指定数据库
create table if not exists test.student(
name varchar(10),
age int, /
整型不需要指定具体的长度 /
grade varchar(10) /
最后后一行,不需要加逗号 /
)charset utf8;
2,隐式指定数据库
use test; /
use + 数据库名称,表示切换到指定的数据库,这句命令其实不加分号也可以,但不建议这么做 /
create table if not exists student(
name varchar(10),
age int, /
整型不需要指定具体的长度 /
grade varchar(10) /
最后后一行,不需要加逗号 */

)charset utf8;

2,查询表

show tables;

其实和查询数据库的操作基本类似。但是查询表首先要指明你要查询的数据库

use +数据库名称;

然后再查询;

mysql 语法策略配置 mysql sql 语法_字段_03


也可以用模糊查询

show tables like ‘students’;

% 和 _作用和上面一样。

3,更新表

第一种:修改表本身

修改表名,rename table 旧表名 to 新表名;

修改表选项,基本语法: alter table + 表名+ 表选项[=]+值;

第二种:修改表中的字段,新增,修改,重命名和删除

1,新增字段,基本语法:alter table + 表名 + add + [column] + 字段名 + 数据类型 + [列属性][位置];

其中,位置表示此字段存储的位置,分为first(第一个位置)和after + 字段名(指定的字段后,默认为最后一个位置).

示例:alter table student add column id int first;

2,修改字段,基本语法:alter table + 表名 + modify + 字段名 + 数据类型 + [列属性][位置];

其中,位置表示此字段存储的位置,分为first(第一个位置)和after + 字段名(指定的字段后,默认为最后一个位置).

示例:alter table student modify name char(10) after id;

3,重命名字段,基本语法:alter table + 表名 + change + 旧字段名 + 新字段名 + 数据类型 + [列属性][位置];

其中,位置表示此字段存储的位置,分为first(第一个位置)和after + 字段名(指定的字段后,默认为最后一个位置).

示例:alter table student change grade class varchar(10);

4,删除字段,基本语法:alter table + 表名 + drop+ 字段名;

示例:alter table student drop age;

注意:如果表中已经存在数据,那么删除该字段会清空该字段的所有数据,而且不可逆,慎用。

4,删除表

基本语法:

drop table + 表1,表2…;

数据操作

1,新增数据
给全表字段插入数据:insert into + 表名+values(值列表);
例如:insert into test valus(‘charies’,18,‘3.1’);
给部分字段插入数据:insert into + 表名(字段列表)+values(值列表);
例如:insert into test(age,name) valus(18,‘guo’);
2,查询数据
查看全部:select * from + 表名+[where 条件];
查看部分:select + 字段名称,字段名称…+from + 表名+[where 条件];
3,更新数据
更新:updata +表名+set+字段=值+[where 条件];
例如:update test set age = 20 where name = ‘guo’;
4,删除数据
删除: delete from + 表名+[where 条件];
例如:delete from test where grade = ‘3.1’;