WEB开发网
开发学院数据库DB2 DB2 9 基础(730 考试)认证指南,第 5 部分: 处理... 阅读

DB2 9 基础(730 考试)认证指南,第 5 部分: 处理 DB2 对象

 2009-01-22 16:39:02 来源:WEB开发网   
核心提示: CONSTRAINT 关键字允许为约束指定一个名称,在这个示例中,DB2 9 基础(730 考试)认证指南,第 5 部分: 处理 DB2 对象(10),惟一性约束的名称是 BOOKSISBN,如果想删除特定的约束,要定义这种关系,应该把 AUTHORS 表的 AUTHORID 列定义为主键

CONSTRAINT 关键字允许为约束指定一个名称。在这个示例中,惟一性约束的名称是 BOOKSISBN。如果想删除特定的约束,那么在 ALTER TABLE 语句中使用这个名称。

DB2 在一个表中只允许定义一个主键;但可以定义多个惟一性约束。

每当为列定义一个 PRIMARY KEY 或 UNIQUE 约束时,DB2 都会创建一个惟一的索引以强制列的惟一性。DB2 不允许在同样的列上创建多个惟一的索引。因此,不能在同样的列上同时定义 PRIMARY KEY 和 UNIQUE 约束。例如,以下针对 BOOKS 表的语句将失败,因为已经有了 PRIMARY KEY:

ALTER TABLE BOOKS ADD CONSTRAINT UNIQUE (BOOKID)
CREATE UNIQUE INDEX IBOOKS ON BOOKS (BOOKID)

参照完整性约束

参照完整性约束 用于定义表之间的关系并确保这些关系保持有效。假设有一个表包含关于作者的信息,而另一个表列出这些作者已经写的书。在 BOOKS 表和 AUTHORS 表之间有这样一种关系 —— 每本书都有一个作者,该作者必须存在于 AUTHORS 表中。每个作者都有一个存储在 AUTHORID 列中的惟一的标识符。AUTHORID 在 BOOKS 表中用于识别每本书的作者。要定义这种关系,应该把 AUTHORS 表的 AUTHORID 列定义为主键,然后在 BOOKS 表上定义一个外键,从而与 AUTHORS 表中的 AUTHORID 列建立关系:

CREATE TABLE AUTHORS (AUTHORID INTEGER NOT NULL PRIMARY KEY,
           LNAME VARCHAR(100),
           FNAME VARCHAR(100))
CREATE TABLE BOOKS (BOOKID INTEGER NOT NULL PRIMARY KEY,
          BOOKNAME VARCHAR(100),
          ISBN CHAR(10),
          AUTHORID INTEGER REFERENCES AUTHORS)

上一页  5 6 7 8 9 10 

Tags:DB 基础 考试

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接