菜鸟学SQL之——DML语言的学习(MySQL)

DML语言的学习

数据操作语言(DML):

  • 插入:insert into
  • 修改:update…set
  • 删除:delete from
一、插入语句
1.插入方式一(常用。支持插入多行、支持子查询):

语法:insert into 表名(列名 , …) values(值,…);

insert into 表名[(字段名,字段名,字段名...)] [value|values] (字段值,字段值,字段值...);//名-值要一一对应

要求:

  • 插入的值的类型要与列的类型一致或兼容

  • 不可以为null的列必须插入值,可以为null的列如何插入值?(要么列名和值都省略,要么列名写着,值填为null)

  • 列的顺序可以乱序写,但列名和值要一一对应

  • 列数和值的个数必须一致

  • 可以省略列名,默认所有列,而且列的顺序和表中列的顺序一致(表中有多少字段,就需要放多少字段值)

  • 被设置为主键的字段的值在一张表里是不可重复的!

  • values和value没有太大区别,就是为了区分批量插入的(一次插入多行)

支持子查询,例如插入多行数据

insert into tb_employees
select 1,'a','a','a',985 union
select 2,'b','b','b',211 union
...
2.插入方式二:

语法:insert into 表名 set 列名=值,列名=值,…

二、修改语句

语法:update 表名 set 列=新值,列=新值,… where 筛选条件;

update 表名 set 字段 = 值 where 条件;
update tb_use set name = 'hahah',pwd = '12345' where id = 2;
三、删除语句
方式一:delete

语法:delete from 表名 where 筛选条件

delete from tb_user where id = 1;
delete from tb_user; #清空表
方式二:truncate(清空表)

语法:truncate table 表名

truncate table tb_employee;

对比:

  • delete可以加where条件,truncate不可以

  • 假如要删除的表中有自增长列,用delete删除数据后,再插入数据,自增长列的值从断点开始。而用truncate删除后,再插入数据,自增长列的值从1开始。

  • delete删除有返回值,truncate删除没有返回值

  • truncate删除不能回滚,delete删除可以回滚

为啥DML内容这么少🤔。没错,sql语言的重点就在于一句话查询语句,所以主要重点是查询。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值