专栏目录请点击
简介
数据库操作语言一般三个关键字
- 插入:
insert - 修改:
update - 删除:
delete
插入
方式一
INSERT INTO 表名(列名,...) VALUES(值1,...)
注意
- 插入的值的类型要与列的类型一致或兼容
- 不可以为null的列必须插入值。
方式二
INSERT INTO 表名
SET 列名=值,列名=值,...
两种方式对比
- 方式一支持插入多列,方式二只支持插入单列
- 方式一可以跟select子句,但是方式二不支持
INSERT INTO studentinfo(id,NAME,phone)
SELECT id,boyname,'xxx'
FROM boys
WHERE id <3;
修改
修改单表
UPDATE 表名
SET 列=新值,列=新值,...
WHERE 筛选条件;
修改多表
sql92
UPDATE 表1 别名,表2 别名
SET 列=值,列=值,...
WHERE 连接条件
AND 筛选条件;
sql99
UPDATE 表1 别名
INNER | LEFT | RIGHT | JOIN 表2 别名
ON 链接条件
SET 列=值,列=值,...
WHERE 筛选条件;
删除
方式一
方式一主要使用delete 来进行删除
单表的删除
DELETE FROM 表名
WHERE 筛选条件;
多表的删除
sql92
DELETE 表1的别名,表2的别名
FROM 表1 别名,表2 别名
WHERE 连接条件 AND 筛选语句;
sql99
DELETE 表1的别名,表2的别名
FROM 表1 别名
INNER | LEFT | RIGHT JOIN 表2 别名
ON 连接条件
WHERE 筛选语句;
方式二
方式二,我们使用关键字TRUNCATE 来进行删除
TRUNCATE TABLE 表名;
这个删除语句会一下子将所有的表进行删除
两种方式的区别
delete 是DML,执行操作的时候,需要手动commit操作才可以进行,且可以进行回滚操作,但是truncate 是DDL,他会隐式的提交,不能回滚,不会触发触发器truncate 删除后数据会从1开始,而delete 删除后只会从删除前的最后一行开始写,所以内存空间上,truncate 更省空间truncate 处理的速度更快,delete 需要先查询在删除
|