目录
一、插入语句
方式一:
语法:
INSERT INTO 表名(列名1,列名2,....)
VALUES(值1,值2,....)
特点:1、插入的值的类型要与列的类型一致或兼容
2、不可以为NULL的列必须插入值,可以为NULL的列(方式一,如果该列没有值都不写;方式二:如果该列没有值,写上列名,值所对应的写上NULL)
3、列的顺序可以调换(所对应的值要跟列名对应)
4、列数和值的个数必须一致
5、可以省略列名,默认所有列,而且列的顺序和表中的列的顺序一致
格式:INSERT INTO 表名
VALUES(值1,值2,...)
方式二:
语法: INSERT INTO 表名
SET 列名=值,列名=值,....
两种方式比较:
1、方式一支持插入多行,方式二不支持
例子:INSERT INTO 表名(列名1,列名2,....)
VALUES(值1,值2,....)
VALUES(值1,值2,....)
....
2、方式二支持子查询,方式二不支持
例子:INSERT INTO 表名(列名1,列名2,....)
SELECT 值1,值2,值3,...(SELECT 列名1,列名2,...FROM 表 WHERE 筛选条件)
二、修改语句
1、修改单表的记录(重点)
语法:
UPDATE 表名
SET 列名1=新值1,列名2=新值2,....
WHERE 筛选条件
2、修改多表的记录(99标准)(补充)
语法:UPDATE 表名1
INNER/LEFT/RIGHT JOIN 表名2
ON 连接条件
SET 列名1=新值1,列名2=新值2,...
WHERE 筛选条件
三、删除语句
方式一:
语法:
1、单表的删除(重点)
DELETE FROM 表名
WHERE 筛选条件
2、多表的删除(了解)
DELETE 表1/表2
FROM 表1
INNER/LEFT/RIGHT JOIN 表2
ON 连接条件
WHERE 筛选条件
方式二:TRUNCATE
语法:
TRUNCATE TALBE 表名 (一删全删)
DELETE 和 TRUNCATE 的区别(面试题)
1、delete 可以加where语句,truncate不能加
2、加入要删除的表中有自增长列
如果用delete删除后,在插入数据,自增列的值从断点开始
如果用truncate删除后,在插入数据,自增长列从0开始
3、truncate删除,效率稍微高一点
4、truncate删除没有返回值,delete删除有返回值(就是下面的提示信息)
5、truncate删除不能回滚,delete删除可以回滚