redo19990701

DML数据操作语言

  • 插入 INSERT
  • 修改 UPDATE
  • 删除 DELETE

插入语句

方式一

  • 语法
INSERT INTO 表名(列名,...) VALUES(值1,...)
  • 示例
#向students中插入信息
INSERT INTO students(id,name,brithdate,phone) VALUES
(111,\'张三\',\'1999-1-1\',\'123145124\'),
(222,\'李四\',\'1999-2-1\',\'123145124\'),
(333,\'王五\',\'1999-3-1\',\'123145124\');
#子查询
INSERT INTO students(id,name,brithdate,phone) 
SELECT 111,\'张三\',\'1999-1-1\',\'123145124\';

方式二

  • 语法(不支持多行)
INSERT INTO 表名
SET 列名=值,列名=值,...
  • 示例
#向students中插入信息
INSERT INTO students
SET id=\'111\',name=\'张三\',birthdate=\'1999-1-1\',phone=\'13213213\';

注意

  • 一次插入多行使用逗号分隔
  • 列名与值一一对应
  • 字符串用单引号括起来
  • 方式一支持插入多行和子查询,而方式二不支持

修改语句

单表的修改

  • 语法
UPDATE 表名
SET 列名=新值,列名=新值
WHERE 筛选条件
  • 示例
#将students中小明的电话改为110,birthdate改为\'2000-1-1\'
UPDATE students
SET phone=\'110\',birthdate=\'2000-1-1\'
WHERE name=\'小明\';

多表的修改

  • 语法
UPDATE 表1
连接类型 表2
ON 连接条件
SET 列=新值,列=新值...
WHERE 筛选条件

删除语句

DELETE

  • 语法
DELETE FROM 表名
WHERE 筛选条件
DELETE 表1,表2
FROM 表1
连接类型 表2
ON 连接条件
WHERE 筛选条件
  • 示例
#删除姓王的所有学生
DELETE FROM students 
WHERE name LIKE \'王%\';

TRUNCATE

  • 语法
TRUNCATE TABLE 表名
  • 示例
#删除所有学生
TRUNCATE TABLE students;

注意

  • DELETE可以加筛选条件而TRUNCATE不可以
  • TRUNCATE删除后自增长列从零开始,DELETE删除后自增长列从断点开始
  • DELETE有返回值,TRUNCATE没有返回值
  • TRUNCATE可以回滚,DELETE不可以

分类:

技术点:

相关文章: