SQL中DML语句用法
DML是对表中的数据进行增、删、改的操作。主要包括:INSERT 、UPDATE、 DELETE
在mysql中,字符串类型和日期类型都要用单引号括起来。
空值:null
插入操作:INSERT
语法格式:
insert into 表名(列名) values(数据值);
insert into student(stuname,stuage,stusex,birthday) values('张三1',18,'a','2000-1-1');
或:
insert into student values('张三1',18,'a','2000-1-1');
注意:
1.多列和多个列值之间使用逗号隔开
2.列名要和列值一一对应
3.非数值的列值两侧需要加单引号
同时添加多行:
insert into 表名(列名) values(第一行数据),(第二行数据),(),();
insert into student(stuname,stuage,stusex,birthday)
values('张三3',18,'a','2000-1-1'),
('张三4',18,'a','2000-1-1'),
('张三5',18,'a','2000-1-1'),
('张三6',18,'a','2000-1-1'),
('张三7',18,'a','2000-1-1'),
('张三8',18,'a','2000-1-1');
注意:
1.列名与列值的类型、个数、顺序要一一对应。
2.参数值不要超出列定义的长度。
3.如果插入空值,使用null
4.插入的日期和字符一样,都使用引号括起来。
修改(更新)操作:UPDATE
语法格式:
UPDATE 表名 SET 列名1=列值1,列名2=列值2 … WHERE 列名=值
注意: WHERE 后面表示 列名=值 所在的这一行。
承接上面的代码片:
将所有学生年龄修改为15。
UPDATE student SET stuage=15;
将姓名为’张三4’的同学年龄修改为16:
UPDATE student SET stuage=16 WHERE stuname='张三4';
删除操作:DELETE
语法 :
DELETE from 表名 [WHERE 列名=值];
删除表中名称为’张三4’的记录。
DELETE FROM student where stuname='张三4';
使用truncate删除表中记录。
TRUNCATE TABLE student;
注意:
- DELETE 删除表中的数据,表结构还在;删除后的数据可以找回
- TRUNCATE 删除是把表直接DROP掉,然后再创建一个同样的新表。删除的数据不能找回。执行速度比DELETE快。