2012-09-10 65 views
0

我面臨着一個問題。我有一個已經在DB2中創建的表。如何將PK添加到DB2中的現有表中?

CREATE TABLE "DDL12" 
(
"D4_1" decimal(10,0), 
"D4_2" decimal(10,0), 
); 

我想此表上創建一個PK爲: -

ALTER TABLE "DDL12" ADD CONSTRAINT "Key4" PRIMARY KEY ("D4_1"); 

但運行命令時,我收到錯誤說D4_1爲空。

現在,我該如何在這張桌子上創建一個PK?

感謝

回答

1

是的,這是由於這樣的事實,即數據庫「可以有」,現在有在非PK列NULL值的行。因此,首先將列設置爲NOT NULL(+確保在所有行中具有唯一值),然後使用上面的命令設置主鍵。

您可以更改列不NULL這樣的:

ALTER TABLE "DDL12" 
MODIFY "D4_1" decimal(10,0)  NOT NULL; 
相關問題