详解利用DB2对象创建约束

作者:夏果果  来源:IT165收集  发布日期:2011-12-20 09:30:36

  约束使 DBMS 能够防止不正确的或意外的数据输入表中,从而确保表中数据的完整性。DB2中使用以下约束实施数据完整性:

  主键(Primary key)

  用来确保一个列或一组列的值的惟一性。每个表只能有一个主键。

  外键(Foreign key)或称为引用约束(referential constraint)

  用来在两个表之间建立引用关系,这两个表通常称为子表和父表,用来建立引用关系的操作在 REFERENCE 子句中定义。当在父表或子表中插入/删除/更新的数据满足预定义的条件时,就执行这个操作。外键总是应该引用父表中的主键或惟一键。

  惟一键(Unique key)

  用来确保一个列或一组列的值的惟一性。与主键相反,一个表可以有多个惟一键。惟一键还使外键能够引用主键之外的数据列。每当定义主键或惟一键时,就会创建惟一索引。

  检查约束(Check constraint)

  在表级上针对一个或多个表列定义检查约束,它们可以对这些表列实施指定的规则,使这些列中插入或更新的数据满足检查约束中预先定义的条件。与其他约束不同,检查约束可以在某些操作期间临时关闭,比如 LOAD,在对约束进行检查之前,表处于检查未决状态。

  可以在创建表时创建约束,也可以使用 ALTER TABLE 语句或 GUI 界面在以后添加约束。

  以下练习演示如何创建和使用这些约束。它还演示如何使用 Command Editor 执行一些日常管理任务:

  1、在 Control Center 主菜单中,点击 Tools > Command Editor。出现 Command Editor 窗口。使用这个编辑器编辑 DB2 命令,执行它们,然后查看返回的 DB2 或 SQL 消息。

  2、首先在 AUTHOR 表中添加另一个列,然后在这个表上添加一个主键。添加以下命令并点击图1 所示的绿色执行按钮:

  图1 Command Editor —— 修改表

Command Editor —— 修改表

  在添加主键时,由于 AUTHOR_ID 上已经有了一个惟一索引, DB2 要在幕后创建一个惟一索引。 DB2 为这个主键使用现有的索引,并返回 SQL0598W。

  3、在 Command Editor 中,还可以选择将现有命令保存到文件中,或者用接下来要编辑或运行的新命令替换它们。

延伸阅读:

Tag标签: 创建约束  
  • 专题推荐

About IT165 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规