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

DB2
如何访问大型机、小型机上的DB2 9数据服务器
DB2 9(Viper)快速入门
段云峰:DB2 9对企业有3点帮助
DB2专家王云谈商业智能BI
DB2 9的九大新特性
国内学院派专家对DB2 9新产品赞不绝口
DB2中的数据移动(一)
DB2大事记
DB2编程序技巧(1)
创建一个空的IBM DB2 ECO数据库的方法
在DB2数据库的表中插入和删除数据
在DB2环境中创建DB2数据库
为DB2数据库创建表空间
DB2数据库SQL语法参考手册
使用 DB2 对象:创建模式、表和视图
使用 DB2 对象:创建约束
使用 DB2 对象:创建索引
导入、装载和导出DB2数据库的数据
为DB2数据库添加验证约束
从DB2数据表和视图查询数据

为DB2数据库添加验证约束


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 46 ::
收藏到网摘: 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 窗口。