既存のテーブル名Product_Details
の新しく追加された列に主キーを追加しようとしています。既存のテーブルに主キーを持つ列を追加する
新しい列が追加さ:Product_Detail_ID
(int
とnot null
を)
私はProduct_Detail_ID
に主キーを追加しようとしています(注意:この表に割り当てられている他の主キーまたは外部キーが存在しない)
私がしようとしていますこのクエリではエラーが発生します。
ALTER TABLE Product_Details
ADD CONSTRAINT pk_Product_Detils_Product_Detail_ID PRIMARY KEY(Product_Detail_ID)
GO
エラー:
The
CREATE UNIQUE INDEX
statement terminated because a duplicate key was found for the object name'dbo.Product\_Details'
and the index name'pk\_Product\_Detils'
. The duplicate key value is (0).
私はここで何かが足りないのですか?私はSQL Server 2008 R2を使用しています。助けていただければ幸いです。
を達成することができたあなたのテーブルには、この列の重複値を持っていますが、主キーは列内の値が一意であることが必要です。 PKを作成するには、重複を削除する必要があります。 –
テーブルにデータが含まれていますか?この場合、pk列にする前に、新しい列に一意の値があることを確認する必要があります。 –
新しい値で列を更新しましたか?または、あなたのエラーメッセージに示されているように、それらはすべて '0'ですか?そのフィールドの*すべての*値が他の値と異なることを確認してください。 – MatBailie