Qingquan-Li / blog

My Blog
https://Qingquan-Li.github.io/blog/
132 stars 16 forks source link

MySQL_3 MySQL数据库数据管理_DML(INSERT、UPDATE、DELETE) #22

Open Qingquan-Li opened 7 years ago

Qingquan-Li commented 7 years ago

本篇博客(第三篇)重点:

使用 MySQL 语句添加(INSERT)数据(属于 DML 数据操作语言) 使用 MySQL 语句修改(UPDATE)数据(属于 DML) 使用 MySQL 语句删除(DELETE)数据(属于 DML)

添加(INSERT)数据

INSERT 命令

语法:

 INSERT INTO 表名 [(字段1,字段2,字段3, … ] VALUES ('值1', '值2', '值3', … )

注意:

实例一: 使用INSERT语句给数据表grade添加数据,数据列 GradeName :大一、大二、大三、大四

insert into `grade`(`GradeID`,`GradeName`) values (1,'大一'),(2,'大二'),(3,'大三'),(4,'大四');

实例二: 使用INSERT语句给数据表 student 添加数据

insert into student
(StudentNo,StudentName,Sex,GradeId,Phone,Address,Email,IdentityCard)
values
(003,"张三",1,1,"13133333333","北京","zhangsan@gmail.com","113333333333333333"),
(004,"李四",1,2,"13244444444","上海","lisi@163.com","314444444444444444"),
(005,"王五",2,3,"13355555555","广州","wangwu@qq.com","445555555555555555")
学号 姓名 性别 年级 手机号 地址 邮箱 身份证
003 张三 1 1 13133333333 北京 zhangsan@gmail.com 113333333333333333
004 李四 1 2 13244444444 上海 lisi@163.com 314444444444444444
005 王五 2 3 13355555555 广州 wangwu@qq.com 445555555555555555


修改(UPDATE)数据

UPDATE 命令

语法:

UPDATE 表名 SET column_name = value [ , column_name2 = value2, … ] [ WHERE condition ];

注意

WHERE 条件子句

简单理解为有条件地从表中筛选数据

WHERE中的运算符:

运算符 含义 范例 结果
= 等于 5=6 false
<> 或 != 不等于 5!=6 true
> 大于 5>6 false
< 小于 5<6 true
>= 大于等于 5>=6 false
<= 小于等于 5<=6 true
BETWEEN 在某个范围之间 BETWEEN 5 AND 10 -
AND 并且 5>1 AND 1>2 false
OR 5>1 OR 1>2 true

实例一:

使用UPDATE语句修改数据,将 student 数据表中数据列学号 StudentNo 为 1024 的学生的邮箱修改为 student1024@gmail.com ,密码 LoginPwd 改为 256:

UPDATE student SET email="student1024@gmail.com" , LoginPwd="256" WHERE StudentNo = "1024";

实例二: 将数据表 subject 中 ClassHour 大于 110 且 GradeID 为 1 的课时都减少 10

UPDATE subject SET ClassHour = ( ClassHour - 10 ) WHERE ClassHour>110 and GradeID = 1;


删除(DELETE)数据

DELETE 命令

语法:

DELETE FROM 表名 [ WHERE condition ];  

注意: condition 为筛选条件,如不指定则删除该表的所有列数据

注意: 由于数据库的数据删除后不能恢复,所以在执行 DELRTR 语句之前,建议使用 SELECT 确认一下要删除的数据(例如用 SELECT * FROM pages WHERE id = 1 查看),然后把 SELECT * 换成 DELETE 就可以的,这会是一个好习惯。 很多程序员都有过一些 DELETE 误操作的伤心往事,还有一些恐怖故事就是有人慌乱中忘了在语句中放 WHERE ,结果把所有客户数据都删除了。

TRUNCATE 命令

用于完全清空表数据,但表结构、索引、约束等不变

语法:

TRUNCATE [TABLE] table_name 

注意 DELETE 命令 和 DELETE命令: