DML语句之增删改

1.DML语句

  • DML(Data Manipulation Language-数据操纵语言)
  • 事务是由完成若干项工作的DML语句组成的

2.插入语句

2.1 insert into 表名(列名…)values(值1,…);

  • 不可以为null的列必须插入值
  • 可以为null的列,如果前面写列名则后面要写NULL,或者前后均省略
  • 插入的值的类型要与列的类型一致或兼容
  • 列数和值的个数一致
  • 可以省略列名,默认为所有列,而且列的顺序和表中列的顺序一致
  • insert into beauty (id,name,sex,phone) values (14,‘杨紫’,‘女’,‘17398900000’);

2.2 insert into 表名 set 列名=值,列名=值…;

  • insert into beauty set id=13,name=‘宋茜’,sex=‘女’,phone=‘1111111111’;

2.3 两种方式比较

1.方式一:支持插入多行
insert into beauty (id,name,sex,phone)
values (15,‘杨紫2’,‘女’,‘17398900000’),
(16,‘杨紫3’,‘女’,‘17398900000’);
2.方式一:支持子查询
insert into boys(id,boyName)
select id,name from beauty where id>14;

3.修改语句

3.1 修改表单记录

update 表名 set 列=新值, … where 筛选条件;
update beauty set phone =‘1111111122’ where id=13;

3.2 修改多表记录

  • 修改张无忌的女朋友的手机号都为1212222
    update boys b
    inner join beauty be on b.id=be.boyfriend_id
    set be.phone=‘1212222’
    where b.boyName=‘张无忌’;
  • 修改没有男朋友的女神的男朋友编号为2
    update boys b right
    join beauty be
    on be.boyfriend_id = b.id
    set be.boyfriend_id=2
    where b.id is null;

4.删除语句

4.1 单表删除

delete from 表名 where 筛选条件
delete from beauty where phone like=’%9’;

4.2 多表删除

  • delete 表1的别名,表2的别名
    from 表1 别名
    inner | right | left join 表2 别名
    on 连接条件
    where 筛选条件
  • delete be from boys b
    right join beauty be
    on b.id=be.boyfriend_id
    where b.boyName=‘张无忌’;

4.3 truncate & delete

1.delete可以加where条件,truncate不能
2.truncate效率更高
3.如果用delete删除后,再插入数据,自增长列的值从断点开始,
4.而truncate删除后,再插入数据,自增长列的值从1开始
5.delete删除后有返回值
6.delete删除可以回滚

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值