数据库----------DML
创始人
2025-05-28 18:44:17

目录

1.基本介绍

2.DDL 语句与DML 语句的主要区别 

3.数据插入

4.数据修改

5.数据删除

6.总结

7.练习


1.基本介绍

DML是指数据操作语言,英文全称是Data Manipulation Language,用来对数据库中表的数据记录进行更新。

它创建的模式(表)使用数据操作语言来填充。DDL填充表的行,每行称为Tuple。使用DML,您可以插入,修改,删除和检索表中的信息。DML命令有助于管理存储在数据库中的数据。但是,DML命令不会自动提交。因此,变化不是永久性的。因此,可以回滚操作。

一些DML命令包括insert,update,delete和select。insert命令有助于将新记录或行存储到表中;update命令有助于修改表中的现有记录;delete命令允许从表中删除某个记录或一组记录;select命令允许从一个或多个表中检索特定记录。

关键字:

  • 插入 insert
  • 删除 delete
  • 更新 update

2.DDL 语句与DML 语句的主要区别 

DDLDML
名称数据定义语言数据操纵语言
区别数据库内部的对象进行创建、删除、修改操作只是对表内部数据进行操作 (不涉及到表的定义、结构的修改,也不涉及到其他对象)

3.数据插入

语法格式:

格式1: insert into 表(列名1,列名2,列名3...) values(值1,值2,值3...);
格式2: insert into 表 values(值1,值2,值3...); //向表中插入所有列

 例子:

-- 格式1: insert into 表(列名1,列名2,列名3...) values(值1,值2,值3...);
insert into student (sid,name,gender,age,birth,address,score) values (1001,'张三','男',18,'2001-12-23','北京',85.5);insert into student (sid,name,gender,age,birth,address,score) values (1002,'李四','男',17,'2002-1-24','上海',93.5),(1003,'刘丽','女',19,'2000-2-23','杭州',95);-- 格式2: insert into 表 values(值1,值2,值3...);//向表中插入所有列
insert into student values (1004,'张华','女',21,'1999-1-08','深圳',75)

4.数据修改

语法格式:

update 表名 set 字段名=值,字段名=值...;
update 表名 set 字段名=值,字段名=值... where 条件;
  • update:更新
  • set:设置 

 例子:

-- 1.将所有学生的地址修改为重庆update student set address = '重庆';

-- 2.将id为1004的学生的地址修改为北京update student set address = '北京' where sid = 1004;

3.将id为1005的学生的地址修改为北京,成绩修改为100update student set address = '北京' ,score = 100 where sid = 1005; 

 

5.数据删除

 语法格式:

de1ete from 表名 [where 条件];
truncate table 表名 或者 truncate 表名

例子:

-- 1.删除sid为1004的学生数据delete from student where sid = 1004;
-- 2.删除表所有数据delete from student;
-- 3.清空表数据truncate table student;truncate student;

注意:

delete和truncate原理不同,delete只删除内容,而truncate类似于drop table,可以理解为是将整个表删除,然后再创建该表

6.总结

7.练习

-- 1.创建表
/* 创建员工表employee,字段如下:
    id(员工编号),name(员工名字),gender(员工性别),salary(员工薪资)
*/

-- 2.插入数据
/*
  1.'张三','男',2000
    2.'李四','男',1000
    3.'王五','女',4000
*/

-- 3.修改表数据
-- 3.1 将所有员工薪水修改为5000元

-- 3.2 将姓名为'张三'的员工薪水修改为3000元

-- 3.3 将姓名为'李四'的员工薪水改为4000元,gender改为女

-- 3.4 将王五的薪水在原有基础上增加1000元

-- 1.创建表
/* 
创建员工表employee,字段如下:id(员工编号),name(员工名字),gender(员工性别),salary(员工薪资)
*/create table if not exists abc.employee(id int,name varchar(20),gender varchar(10),salary double
);-- 2.插入数据
/*1.'张三','男',20002.'李四','男',10003.'王五','女',4000
*/insert into employee(id,name,gender,salary) values (1,'张三','男',2000);
insert into employee values(2,'李四','男',1000),(3,'王五','女',4000);-- 3.修改表数据
-- 3.1 将所有员工薪水修改为5000元update employee set salary = 5000;-- 3.2 将姓名为'张三'的员工薪水修改为3000元update employee set salary = 3000 where name = '张三';-- 3.3 将姓名为'李四'的员工薪水改为4000元,gender改为女update employee set salary = 4000,gender = '女' where name = '李四';-- 3.4 将王五的薪水在原有基础上增加1000元
update employee set salary = salary + 1000 where name = '王五';

补充:

建表方法1 

  • use abc;
  • create table if not exists employee ();

建表方法2

  • create table if not exists abc.employee ();
     


 

相关内容

热门资讯

云龙天池国家级自然保护区入选世... 转自:云南日报记者近日从云龙天池国家级自然保护区获悉,该保护区正式入选世界自然保护联盟绿色名录,成为...
芒果干里的“暖心账”​ 我 为 群 众 办 实 事我是楚雄彝族自治州楚雄市八角镇大麦地村委会泥期苴小组的鲁晓玲。天还没亮,新...
在亲戚借条上签名被判连带清偿责...   三湘都市报12月14日讯  欠钱逾期未还,双方公堂对簿,竟因借据上的“担保人”“连带担保人”起了...
学分能换“高级工”证书?湖南暂...   毕业就能拿到“高级工”的技能证书,实现“毕业即持证”,这是种什么样的体验?近日,安徽皖江工学院土...
长赣高铁湖南段首座隧道进洞施工     12月13日,位于浏阳市荷花街道和澄潭江镇的长赣高铁湖南段首座隧道——苏家庵隧道正式进洞。 ...