Klucze podstawowe w dowolnym relacyjna baza danych nie może mieć wartości NULL - jest to jedna z głównych, fundamentalnych cech klucza podstawowego.
Zobacz:SQL według projektu:jak wybrać klucz podstawowy
AKTUALIZACJA: ok, więc potrzebujesz klucza podstawowego "auto-inkrementacji" w SQL Server.
Musisz zdefiniować to jako INT IDENTITY w swojej instrukcji CREATE TABLE:
CREATE TABLE dbo.YourTable(ID INT IDENTITY, col1 INT, ..., colN INT)
a następnie, gdy wykonujesz INSERT, musisz jawnie określić kolumny do wstawienia, ale po prostu nie podawaj kolumny "ID" na tej liście - wtedy SQL Server zajmie się znalezieniem właściwej wartości automagicznie:
INSERT INTO dbo.YourTable(col1, col2, ..., colN) -- anything **except** `ID`
VALUES(va1l, val2, ..., valN)
Jeśli chcesz to zrobić po utworzeniu tabeli, możesz to zrobić w projektancie tabel w SQL Server Management Studio: