当前位置: 首页 > 图文教程 > 数据库 > DB2 > 为DB2数据库添加验证约束

DB2
IBM DB2 日常维护汇总(八)
IBM DB2 日常维护汇总(七)
IBM DB2 日常维护汇总(五)
IBM DB2 日常维护汇总(四)
IBM DB2 日常维护汇总(三)
IBM DB2 日常维护汇总(二)
IBM DB2 日常维护汇总(一)
DB2常用傻瓜问题1000问(六)
DB2常用傻瓜问题1000问(五)
MySQL数据库结构和数据的导出和导入
DB2编程序小小技巧
在DB2中提高INSERT性能的技巧(1)
db2v8的pdf文档资料
DB2 9数据服务器发展3部曲
对比DB2 9和DB2 V8.x中的XML功能
用shell抽取,更新db2的数据
IBM DB2 Connect简介(1)
使用XQuery查询DB2 XML数据
DB2 9产品说明书在线参考地址(http)
使用SQL查询DB2 9中的XML数据

为DB2数据库添加验证约束


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 52 ::
收藏到网摘: n/a

  在DB2数据库中约束用来确保表中不会使用无效的数据。不满足已定义的约束的行会被拒绝。在这个练习中,将验证约束,看看在输入无效数据时会发生什么情况。

  表 PARTICIPANT 中有一个外键,这意味着对于 PARTICIPANT 的 PAR_ID 列中的每个值,在 MODULE 表中必须有具有相同 MODULE_ID 列值的行。因为 MODULE 表当前是空的,所以如果在 PARTICIPANT 表中输入数据,那么这个条件无法得到满足。按照以下步骤验证约束:

  1、在 Control Center 中,点击 PARTICIPANT 表,然后点击 Open。在 Open Table 面板中,点击 Add Row。将下面所示的行输入 PARTICIPANT 表并点击 Commit。

  图1. Control Center —— 插入行

  Control Center —— 插入行

  2、返回消息 SQL0530N,这说明未满足外键约束所规定的引用完整性要求。

  3、点击 Close 关闭消息,再次点击关闭 Open Table 窗口。

  4、验证已经在 MODULE 表上定义的检查约束。因为在创建 MODULE 表时建立了检查约束(“CONSTRAINT MID_CHECK CHECK (MODULE_ID >= 0)”),所以 MODULE_ID 不能包含负数。

  5、在 Control Center 中,点击 MODULE 表,然后点击 Open。在 Open Table 面板中,将一个 MODULE_ID 列值为负数的行插入 MODULE 表中,并为 MODULE_NAME 提供一个名称。尝试插入,看看会发生什么情况。下面的错误消息指出不应该这么做:

  图2. 验证检查约束

  验证检查约束

  6、点击 Close 关闭消息,再次点击 Close 关闭 Open Table 窗口。