Mac安装使用Mysql教程(从零开始)
- 第一章 Mac安装MySQL
- 第二章 安装数据库管理软件DBeaver
- 第三章 DBeaver创建MySQL数据库
- 第四章 终端管理MySQL
- 第五章 MySQL基本操作之查询
- 第六章 MySQL基本操作之插入
- 第七章 MySQL基本操作之更新与删除
- 第八章 创建和操纵表
- 第九章 使用视图
- 第十章 使用存储过程
- 第十一章 管理事务处理
- 第十二章 游标
- 第十三章 MySQL学习问题及解决记录
第七章 MySQL基本操作之更新与删除
第七章 MySQL基本操作之更新与删除
7.1 更新数据
可以使用UPDATE语句更新表中数据。基本的UPDATE语句由如下三部分组成:
- 要更新的表
- 列名和新值
- 要更新行的过滤条件
更新特定行,用 WHERE 指定行:
UPDATE Customers
SET cust_email = 'kim@thetoystore.com'
WHERE cust_id = '1000000005'; #如果没有 WHERE 则默认更新所有行
更新多个列,SET 子句中添加多个"列=值"对,并用逗号分隔:
UPDATE Customers
SET cust_email = 'sam@toyland.com',
cust_contact = 'Sam Roberts'
WHERE cust_id = '1000000006';
7.2 删除数据
使用 DELETE 语句即可,DELETE 语句由如下两部分组成;
- DELETE FROM 指定要删除的表
- WHERE 指定要删除的特定行(如果没有 WHERE 则会删除整个表的数据,但不会删除表)
删除顾客ID为1000000006的那一行:
DELETE FROM Customers
WHERE cust_id = '1000000006';
7.3 更新和删除的指导原则
- 除非确实打算更新和删除每一行,否则绝对不要使用不带 WHERE 子句 的 UPDATE 或 DELETE 语句。
- 保证每个表都有主键(如果忘记这个内容,请参阅第 12 课),尽可能 像 WHERE 子句那样使用它(可以指定各主键、多个值或值的范围)。
- 在 UPDATE 或 DELETE 语句使用 WHERE 子句前,应该先用 SELECT 进 行测试,保证它过滤的是正确的记录,以防编写的 WHERE 子句不正确。
- 使用强制实施引用完整性的数据库(关于这个内容,请参阅第 12 课),这样 DBMS 将不允许删除其数据与其他表相关联的行。
- 有的 DBMS 允许数据库管理员施加约束,防止执行不带 WHERE 子句 的 UPDATE 或 DELETE 语句。如果所采用的 DBMS 支持这个特性,应该使用它。
7.4. 参考
[1] Ben Forta.SQL必知必会-中文-第4版
[2] .MySQL 8.0参考手册(pdf)
[3] .MySQL 8.0参考手册(web)