Db2 添加一个主键和一个外键将总共添加四个键
我试图改变表,在表中添加一个主键和一个外键。然而,当我运行ALTERTABLE查询时,我总是得到四个值,两个主键和两个外键。以下是我正在运行的查询: alter table INFO add constraint pk主键(ID_编号)add constraint fk外键(REV_编号)参考REVIEW_INFO 其结果集如下所示: CONSTNAME类型COLNAMEDb2 添加一个主键和一个外键将总共添加四个键,db2,Db2,我试图改变表,在表中添加一个主键和一个外键。然而,当我运行ALTERTABLE查询时,我总是得到四个值,两个主键和两个外键。以下是我正在运行的查询: alter table INFO add constraint pk主键(ID_编号)add constraint fk外键(REV_编号)参考REVIEW_INFO 其结果集如下所示: CONSTNAME类型COLNAME FK F版本号 PK P版本号 FK F ID_编号 PK P ID_编号 我正在运行SYSCAT.TABCONST以查找
FK F版本号
PK P版本号
FK F ID_编号
PK P ID_编号 我正在运行SYSCAT.TABCONST以查找约束详细信息
请帮助我找出查询出错的地方。您确定没有意外地运行查询两次吗?您的ALTER TABLE语句向SYSCAT.TABCONST添加了两行。另外两个约束存在于数据库中的其他表上,并且在执行ALTER table语句之前就存在了。如果包含SYSCAT.TABCONST中的TABNAME列,则可以确定每个约束适用于哪个表 我们可以根据您的结果推断出一些信息:
CONSTNAME TYPE COLNAME
--------- ---- -------------
FK F REV_NUMBER <-- Created by your ALTER TABLE statement
PK P REV_NUMBER <-- Pre-existing primary key. Probably on REVIEW_INFO table
FK F ID_NUMBER <-- Pre-existing foreign key, against unknown table.
PK P ID_NUMBER <-- Created by your ALTER TABLE statement
CONSTNAME类型COLNAME
--------- ---- -------------
FK F版本号为什么要标记此代码?