3

我在 DB2 中有一个表 MY_TABLE,其中包含几列:

PRODUCT_ID
ADDED_DT
PRODUCT_NAME
PRODUCT_COLOR
PRODUCT_PRICE
EXPIRY_DT

在这些列中,下面的列构成主键:

PRODUCT_ID
ADDED_DT

我想添加 EXPIRY_DT 作为主键,这样表现在将具有三个主键,即。PRODUCT_ID、ADDED_DT 和 EXPIRY_DT

我尝试了以下命令集:

ALTER TABLE MY_TABLE ADD PRIMARY KEY (EXPIRY_DT);
REORG TABLE MY_TABLE;

但是,查询失败并出现错误:

Table "MY_TABLE" already has a "PRIMARY" key.

如何实现这一目标?

4

1 回答 1

12

首先您需要删除现有的主键,然后添加新的主键

ALTER TABLE Table_Name DROP PRIMARY KEY;

ALTER TABLE Table_Name ADD PRIMARY KEY (Column_One, Column_Two);
于 2013-03-01T06:54:29.873 回答