三、UPDATE 更新数据(修改表的数据信息)
UPDATE
语句,也是一种较常用的 SQL 语句,它可以用来(修改)更新表中已存在的记录。
1、有where的情况
注意
请注意 UPDATE 语句中的 WHERE 子句!WHERE 子句规定哪条记录或者哪些记录需要更新。如果省略了 WHERE 子句,所有的记录都将被更新!
update table_name
set column_name=''--需要修改的数据信息
where column_name=''--所要修改列中的数据信息的相同行的数据信息,确保所要被修改的数据信息可以准确的被修改到
2、没有where的情况
注意:
在更新记录时要格外小心!在上面的实例中,如果我们省略了 WHERE 子句,结果会完全不一样。
通过下面这个例子感受一下省略 WHERE 子句会发生什么。
假如我们想要将课程表 courses
中学生人数更新为初始状态 0,且我们使用下面不含 WHERE 子句的 UPDATE 语句:
UPDATE courses
SET student_count = 0;
然后我们执行下面的 SQL 语句来查看更新的结果:
SELECT * FROM courses;
+----+-------------------------+-----------------+------------+------------+
| id | name | student_count | created_at | teacher_id |
+----+-------------------------+-----------------+------------+------------+
| 1 | Advanced Algorithms | 0 | 2020-06-01 | 4 |
+----+-------------------------+-----------------+------------+------------+
| 2 | System Design | 0 | 2020-07-18 | 3 |
+----+-------------------------+-----------------+------------+------------+
| 3 | Django | 0 | 2020-02-29 | 3 |
+----+-------------------------+-----------------+------------+------------+
| 4 | Web | 0 | 2020-04-22 | 4 |
+----+-------------------------+-----------------+------------+------------+
| 5 | Big Data | 0 | 2020-09-11 | 1 |
+----+-------------------------+-----------------+------------+------------+
| 6 | Artificial Intelligence | 0 | 2018-05-13 | 3 |
+----+-------------------------+-----------------+------------+------------+
| 7 | Java P6+ | 0 | 2019-01-19 | 3 |
+----+-------------------------+-----------------+------------+------------+
| 8 | Data Analysis | 0 | 2019-07-12 | 1 |
+----+-------------------------+-----------------+------------+------------+
| 10 | Object Oriented Design | 0 | 2020-08-08 | 4 |
+----+-------------------------+-----------------+------------+------------+
我们可以发现执行不含有 WHERE 子句的 UPDATE 语句后,课程表 courses
中所有课程的学生人数均更新为 0 了,因此,执行没有 WHERE 子句的 UPDATE
要慎重再慎重。