前言
DML 操作是指对数据库中表记录的操作,主要包括表记录的插入、更新、删除和查询、是开发人员日常使用最频繁的操作
一、数据的增加
语法格式:
插入记录
语法: insert into tablename[(field1,field2, 、、、 )] values [(values1,values2,values3 、、、 )];
[例]往student表中插入一条信息,studentid=‘S01’,studentname=‘张三’,能否成功?为什么
insert into student values ('S01','张三');
insert into student values ('S01','张三')
> 1136 - Column count doesn't match value count at row 1
> 时间: 0s
不能成功
insert into student
values ('S01','张三','男',null,null,null,null);
可以多条数据同时插入:
INSERT INTO table_name(col_name1,col_name2,……,col_namen)
VALUES(value1,value2,……,valuen),
……
(value 1,value2,……,valuen);
[例]:往course表中插入多条信息
insert into student(studentid,sex,studentname)
values('S03','男','zs'),('S04','男','zs'),('S05','男','zs')
有时需要将一张表的数据插入到另一张表中,此项操作也可以使用INSERT关键字实现,语法形式为:
INSERT INTO table_name1(table_name1_col_list)
SELECT table_name2_col_list FROM table_name2;
[例子]复制student的表结构,并将现有的student表数据放进去
复制表:create table student_copy1 like student
复制数据:INSERT INTO 新表 SELECT * FROM 旧表
二、数据的修改
语法格式:
更新 ( 更改 ) 记录
语法: update tablename set field1=value1, field2=value2, field3=value3 where column_name=valuen;
[例]:将张三修改成李四,性别修改为女
update student
set studentname='李四',sex='女'
where studentname='张三'
三、数据的删除
删除记录
语法: delete from tablename [where column_name=value]
[例]:删除St0109010001同学的信息[grade表中该同学的信息删除了吗,该如何去做]
delete from student
where studentid='St0109010001'
没有删除
[例子]:删除’St0109010004‘号同学的地址
update student
set homeaddr=null
where studentid='St0109010004'