SQL 基本操作

基本操作:CURD,即增删改查。

根据操作对象的不同,咱们可以将 SQL 的基本操作分为三类,分别为:库操作、表(字段)操作和数据操作。

表操作

1 新增表

基本语法:

create table [if not exists] + 表名(
字段名称 数据类型,
……
字段名称 数据类型 /* 最后后一行,不需要加逗号 */
)[表选项];
  • 1
  • 2
  • 3
  • 4
  • 5

其中,​​if not exists​​表示

  • 如果表名不存在,就执行创建代码;如果表名存在,则不执行创建代码。

表选项则是用来控制表的表现形式的,共有三种,分别为:

  • 字符集设定:

​charset/ character set​

  • + 具体字符集,用来表示数据存储的编码格式,常用的字符集包括

​GBK​

​UTF8​

  • 等。
  • 校对集设定:

​collate​

  • + 具体校对集,表示数据比较的规则,其依赖字符集。
  • 存储引擎:

​engine​

  • +具体存储引擎,默认为

​InnoDB​

  • ,常用的还有

​MyISAM​

  • .

由于任何表都归属于某个数据库,因此在创建表的时候,都必须先指定具体的数据库。在这里,指定数据库的方式有两种,分别为:

  • 第 1 种:显式的指定表所属的数据库,示例
create table if not exists test.student(
name varchar(10),
age int, /* 整型不需要指定具体的长度 */
grade varchar(10) /* 最后后一行,不需要加逗号 */
)charset utf8;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 第 2 种:隐式的指定表所属的数据库,示例
use test;               /* use + 数据库名称,表示切换到指定的数据库,这句命令其实不加分号也可以,但不建议这么做 */
create table if not exists student(
name varchar(10),
age int, /* 整型不需要指定具体的长度 */
grade varchar(10) /* 最后后一行,不需要加逗号 */
)charset utf8;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2 查询表

查看全部 –> 基本语法:​​show tables;​​查看部分(模糊查询)–> 基本语法:​​show tables like 'pattern';​​其中,​​pattern​​是匹配模式,有两种,分别为:​​%​

  • :表示匹配多个字符;

​_​

  • :表示匹配单个字符。

此外,在匹配含有下划线​​_​​的表名的时候,需要在下划线前面加上反斜线​​\_​​进行转义操作。示例:​​show tables like '%t';​​表示匹配所有以​​t​​结尾的表。查看表的创建语句 –> 基本语法:​​show create table + 表名;​​在这里,咱们也可以用​​\g​​和​​\G​​代替上述语句中的​​;​​分号,其中​​\g​​等价于分号,​​\G​​则在等价于分号的同时,将查的表结构旋转​​90​​度,变成纵向结构。查看表中的字段信息 –> 基本语法:​​desc/describe/show columns from + 表名;​

3 更新表

在这里,需要注意:表的修改,分为修改表本身和修改表中的字段。

  • 第 1 类:修改表本身
  • 修改表名,基本语法:

​rename table 旧表名 to 新表名;​

  • 修改表选项,基本语法:

​alter table + 表名 + 表选项[=] + 值;​

  • 第 2 类:修改表中的字段,新增、修改、重命名和删除
  • 新增字段,基本语法:

​alter table + 表名 + add + [column] + 字段名 + 数据类型 + [列属性][位置];​


  • 其中,位置表示此字段存储的位置,分为

​first(第一个位置)​

​after + 字段名(指定的字段后,默认为最后一个位置)​

  • .
  • 示例:

​alter table student add column id int first;​

  • 修改字段,基本语法:

​alter table + 表名 + modify + 字段名 + 数据类型 + [列属性][位置];​


  • 其中,位置表示此字段存储的位置,分为

​first(第一个位置)​

​after + 字段名(指定的字段后,默认为最后一个位置)​

  • .
  • 示例:

​alter table student modify name char(10) after id;​

  • 重命名字段,基本语法:

​alter table + 表名 + change + 旧字段名 + 新字段名 + 数据类型 + [列属性][位置];​


  • 其中,位置表示此字段存储的位置,分为

​first(第一个位置)​

​after + 字段名(指定的字段后,默认为最后一个位置)​

  • .
  • 示例:

​alter table student change grade class varchar(10);​

  • 删除字段,基本语法:

​alter table + 表名 + drop+ 字段名;​


  • 示例:

​alter table student drop age;​

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

4 删除表

基本语法:

/** 可以一次删除多张表 */
drop table + 表1, 表2 ... ;
  • 1
  • 2

在这里,需要注意:此删除为不可逆操作,希望大家谨慎使用。


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


———— ☆☆☆ —— ​​返回 -> 史上最简单的 MySQL 教程 <- 目录​​ —— ☆☆☆ ————