DML部分
1.什么是DML?
数据操纵语言DML(Data Manipulation Language),用户通过它可以实现对数据库的基本操作。
插入:insert,修改 update,删除delete
2.插入语句
insert into 表名(列1,列2,列3...列n) values(值1,值2,值3....值n)
插入数据时,列与值要一一对应
如果插入所有列的数据时,列名可以省略
-- 插入一条数据
INSERT INTO
student(studentno,studentname,loginpwd,sex,majorid,phone,email,borndate)
VALUES
('S020','Tom','112233','男',1,'198974112','tom@163.com','2000-06-04')
INSERT INTO student VALUES
('S025','苏尔曼','root123','男',3,'123452123','sorman@qq.com','1998-07-21')
-- 一次性插入多行数据
INSERT INTO student VALUES
('S026','托马斯','root456','男',3,'123452456','tomasu@qq.com','1997-09-25'),
('S027','孙尚香','r44456','女',2,'152456','ssx@qq.com','1996-02-05'),
('S028','伊苏','qa456','女',1,'15223456','ys1122@qq.com','1997-02-05')
3.修改语句
单表修改
update 表名 set 列1 = 值1,列2 = 值2 ....列n = 值n where 筛选条件
-- 修改伊苏的电话号码 为 1899999
UPDATE student set phone = '1899999' WHERE studentname = '伊苏'
多表修改
update 表名 join类型 join 表1 on 连接条件 set 列 = 值 where 筛选条件
4.删除语句
delete from 表名 where 筛选条件 删除表中记录 单表删除
truncate table 表名 清空表中所有数据
delete 要删除记录的表名 from 表1 join类型 join 表2 on 连接条件 where 筛选条件 多表删除
-- 删除名字以杨开头的学生信息
delete FROM student WHERE studentname like '杨%'
truncate 与 delete区别
1)truncate 无法加 筛选条件,delete可以
2)当使用truncate删除数据,再插入数据时,自增长列从初始开始,delete删除数据,再插入数据时,自增长列从断点开始
3)清空表时truncate比delete效率高
4)truncate删除后没有返回值,delete有返回值
5)truncate删除数据后不可以回滚,delete可以