SQL 数据完整性与事务处理全解析
1. 数据完整性保护
SQL 语言提供了多种特性来保护关系型数据库中数据的完整性,具体如下:
- 必需列的指定 :在创建表时,可以指定必需列,数据库管理系统(DBMS)会阻止这些列中出现 NULL 值。
- 数据验证 :标准 SQL 中的数据验证仅限于数据类型检查,但许多 DBMS 产品提供了其他数据验证功能。
- 实体完整性约束 :确保主键能唯一标识数据库中表示的每个实体。
- 引用完整性约束 :确保在数据库进行更改(插入、更新和删除)时,实体之间的关系得以保留。
- 引用完整性支持 :SQL 标准和较新的实现提供了广泛的引用完整性支持,包括删除和更新规则,告知 DBMS 如何处理被其他行引用的行的删除和修改。
- 业务规则的执行 :DBMS 可以通过触发器机制执行业务规则,该机制由 Sybase 和 SQL Server 推广,并在 SQL:1999 标准中被纳入。触发器允许 DBMS 针对诸如 INSERT、DELETE 或 UPDATE 语句等事件采取复杂的操作。检查约束则提供了一种更有限的方式,将业务规则包含在数据库定义中,并让 DBMS 强制执行。
2. 事务处理概述
数据库更新通常由现实世界的事件触发,例如收到客户的新订单。收到新订单可能会引发对示例数据库的一系列四次更新:
- 向 ORDERS 表中添加新订单。
- 更新接
超级会员免费看
订阅专栏 解锁全文
169万+

被折叠的 条评论
为什么被折叠?



