插入:insert
修改:updata
删除:delete
1.1:插入语句
语法一:
insert into 表名(列名1,列名2,...) values(值1,值2...)
eg1:
INSERT INTO beauty(id,NAME,sex,borndate,phone,photo,boyfriend_id)
VALUES(13,'小爱','女','1999-01-01','1831888888',NULL,2);
语法二(一般不用):
insert into 表名
set 列名1=值1,列名2=值2
eg2:
INSERT INTO beauty
SET id=13,NAME='小爱',sex='女',photo=NULL;
注意:
1:不可为null的列必须插入值,可以为null的列如何插入值?
1:在表中,如果字段值可以为空,我们可以用null填充
2:在表中,如果字段值可以为空,我们可以省略字段和值,只插入不能为null的值
2:列的顺序是可以调换的,但是数据类型必须保持一致
3:列数和值的个数也需要保持一致
4:可以省略列名,默认是所有列,并且列的顺序和表中的顺序一致
5:null也属于一个值
6:语法一支持插入多行插入,语法二不行
INSERT INTO beauty(id,NAME,sex,borndate,phone,photo,boyfriend_id)
VALUES
(20,'小爱1','女','1999-01-01','1831888881',NULL,1),
(21,'小爱2','女','1999-01-02','1831888882',NULL,2),
(22,'小爱3','女','1999-01-03','1831888883',NULL,3),
(23,'小爱4','女','1999-01-04','1831888884',NULL,4);
2:修改语句
2.1:修改单表的记录
语法:
update 表名
set 列名1=新值1,列名2=新值2....
where 筛选条件;
eg1:修改小爱的电话号码为188888888888
UPDATE beauty SET phone = '18888888888'
WHERE NAME LIKE '小爱%';
eg2:修改小爱名称为小爱一号,性别为机器
UPDATE beauty SET NAME='小爱一号',sex='机器'
WHERE id=13
2.2:修改多表的记录
语法:
update 表名1 as 别名
inner|left|right join 表名2 as 别名
on 连接条件
set 列名1=值1,...
where 筛选条件;
eg1:修改小爱的boyfriend的手机号码为144
UPDATE boys AS bo
INNER JOIN beauty AS b
ON bo.id=b.boyfriend_id
SET b.phone='144'
WHERE bo.boyName = '小爱';
3:删除语句:
语法一:
delete from 表名 where 筛选条件
语法二:
truncate table 表名;
delete和truncate区别:
1:delete可以加where条件 ,truncate不可以加where条件
2:truncate删除,效率高一点,直接清空数据
3:delete删除后,再插入的数据,自增长列的值从断点开始
truncate删除后,再次插入的数据,自增长列的值从1开始
4:delete删除有返回值,truncate有返回值
5:truncate删除后不能回滚,delete删除可以回滚
3.1:单表删除
eg1:删除手机尾号为8的女孩信息
DELETE FROM beauty WHERE phone LIKE '%8';
3.2:多表删除
语法:
delete 表1的别名或表2的别名
from 表1 as 别名
inner|left|right join 表2 as 别名
on 连接条件
where 筛选条件
eg1:删除小爱boyfriend的信息
DELETE b
FROM beauty AS b
INNER JOIN boys AS bo
ON b.`boyfriend_id`=bo.`id`
WHERE bo.`boyName`='小爱';