Próbuję dodać klucz podstawowy do nowo dodanej kolumny w istniejącej nazwie tabeli Product_Details
.Dodawanie kolumny z kluczem podstawowym w istniejącej tabeli
Nowa kolumna dodania: Product_Detail_ID
(int
i not null
)
Próbuję dodać klucz podstawowy do Product_Detail_ID
(uwaga: istnieje żaden inny podstawowy lub obcy klucz przypisany do tej tabeli)
próbuję z tym zapytaniem, ale pojawia się błąd.
ALTER TABLE Product_Details
ADD CONSTRAINT pk_Product_Detils_Product_Detail_ID PRIMARY KEY(Product_Detail_ID)
GO
Błąd:
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).
Am I brakuje czegoś tutaj? Używam programu SQL Server 2008 R2. Byłbym wdzięczny za każdą pomoc.
Twoja tabela zawiera zduplikowane wartości w tej kolumnie, ale kluczem podstawowym wymaga, że wartości w kolumnie są unikatowe. Aby utworzyć PK, musisz usunąć duplikaty. –
Czy tabela zawiera dane? W tym przypadku musisz upewnić się, że nowa kolumna ma unikalne wartości przed wykonaniem jej w kolumnie PK. –
Czy zaktualizowałeś kolumnę nowymi wartościami? A może wszystkie są nadal "0", jak pokazano w komunikacie o błędzie. Upewnij się, że * co * wartość w tym polu różni się od każdej innej wartości ... – MatBailie