sql >> Databáze >  >> RDS >> Sqlserver

SQL Server, nelze vložit hodnotu null do pole primárního klíče?

Primární klíče v jakémkoli relační databáze nesmí mít hodnotu NULL – je to jedna z hlavních, základních charakteristik primárního klíče.

Viz:SQL by Design:jak vybrat primární klíč

AKTUALIZACE: ok, takže chcete primární klíč "automatického přírůstku" na serveru SQL.

Musíte jej definovat jako INT IDENTITY v příkazu CREATE TABLE:

 CREATE TABLE dbo.YourTable(ID INT IDENTITY, col1 INT, ..., colN INT)

a poté, když uděláte INSERT, musíte explicitně určit sloupce, které se mají vložit, ale nezadávejte sloupec "ID" v tomto seznamu - pak SQL Server automaticky vyhledá správnou hodnotu:

 INSERT INTO dbo.YourTable(col1, col2, ..., colN) -- anything **except** `ID`      
 VALUES(va1l, val2, ..., valN)

Pokud to chcete udělat poté, co jste již tabulku vytvořili, můžete tak učinit v návrháři tabulek SQL Server Management Studio:



  1. Jak odstranit číslice z konce řetězce pomocí SQL

  2. jak znovu vytvořit frontu wf_java_deferred

  3. Nastavení přístupových oprávnění k databázi

  4. V tabulce nelze zobrazit hodnoty oddělené čárkami