数据操纵语言DML

1. 什么是数据操纵语言

    数据操纵语言DML(Data Manipulation Language),用户通过它可以实现对数据可的基本操作. 

2. 数据操纵语言的三种形式:

      1)插入: insert

      2)修改: update

      3)删除: delete

    2.1 插入语句

          2.1.1 插入语句的方式一: 经典的插入

                   语法格式: 

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

                  2.1.1.1 经典插入语句的特点:

                   ① 插入的值的类型必须要与列的类型一致或兼容

                   ②不可以为null的列必须插入值,可以为null

                   ③列的顺序可以调换,但值必须跟着列的顺序调换而调换

                   ④列数和值的个数必须保持一致

                   2.1.1.3 案例 : 在员工表中添加一条员工的信息(id 111 ,姓名 张三 ,性别 男, 电话 19888888)

                  insert into employees(employee_id,employee_name,employee_sex,employee_phone) values('111','张三','男','19888888');

            2.1.2 插入语句的方式二:

                      语法格式:

                                     insert into 表名 set 列名1 = 值1,列名2 = 值2...;

                    2.1.2.1 案例:  在员工表中添加一条员工的信息(id 111 ,姓名 张三 ,性别 男, 电话 19888888)

                   insert into employees set employee_id=111,employee_name='张三',employee_sex='男',employee_phone='19888888';

            2.1.3 两种方式的区别

                        ① 方式一支持插入多行,方式二不支持

                        ② 方式一支持子查询,方式二不支持子查询

    2.2 修改语句

          2.2.1 修改语句的语法格式      

                sql92语法:
                 update 表1 别名,表2 别名set 列=值 where 连接条件and 筛选条件;

                sql99语法:
                update 表1 别名 inner|left|right join  表2 别名on  连接条件  set 列=值 where 筛选条件;

          2.2.2修改语句的分类: 修改单表记录和修改多表记录

                   2.2.2.1 单表的删除

                               方式一: delete 可删除整行or整个表

                               语法格式: delete from 表名 [where 筛选条件 limit 条目数]

                               方式二:truncate 删除整个表(清空数据)

                               语法格式: truncate table 表名;

                  2.2.2.2 多表的删除

                               sql92:

                                         delete 表1的别名,表2的别名

                                         from 表1 别名, 表2 别名

                                         where 连接条件

                                         and 筛选条件

                               sql99:

                                         delete 表1的别名,表2的别名

                                         from 表1 别名

                                         inner|left|right join 表2 别名 on 连接条件

                                         where 筛选条件

           2.2.3 两种单表删除的区别

                    ① delete可以加where条件,truncate不能加

                    ② truncate 删除效率较高

                    ③ 加入要删除的表由自增长长列, 如果用delete删除后,再插入数据,自增长列的值从断点开始; truncate删除后,在插入数据自增长列的值从1 开始.

                    ④ truncate 删除没有返回值, delete删除有返回值(受影响的行数)

                    ⑤ truncate 删除不能回滚, delete删除可以回滚.

酒枯推荐

      推荐使用浏览器:Google Chrome

      推荐使用Java环境:IDEA(IntelliJ IDEA)

          本周推荐学习:JDBC的学习与应用

          推荐学习视频链接:https://www.bilibili.com/video/BV1eJ411c7rf?from=search&seid=2172690829084319707

          推荐练习Java环境:https://leetcode-cn.com/

猜你喜欢

转载自blog.csdn.net/weixin_52011642/article/details/111826366