Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL Server, не можете да вмъкнете null в полето за първичен ключ?

Основни ключове встокива релационната база данни не може да бъде NULL – това е една от основните, фундаментални характеристики на първичния ключ.

Вижте:SQL по дизайн:как да изберете първичен ключ

АКТУАЛИЗИРАНЕ: добре, значи искате първичен ключ за "автоматично увеличаване" в SQL Server.

Трябва да го дефинирате като INT IDENTITY във вашия израз CREATE TABLE:

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

и след това, когато направите INSERT, трябва изрично да посочите колоните за вмъкване, но просто не посочвайте колоната "ID" в този списък - тогава SQL Server ще се справи с намирането на правилната стойност автоматично:

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

Ако искате да направите това, след като вече сте създали таблицата, можете да го направите в дизайнера на таблици на SQL Server Management Studio:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Каква е разликата между CHAR и VARCHAR в SQL Server - SQL Server / T-SQL урок, част 31

  2. Разберете дали даден обект е външен ключ с OBJECTPROPERTY() в SQL Server

  3. Sql заявка за дървовидна таблица

  4. Проста заявка за вземане на максимална стойност за всеки идентификатор

  5. Направете лесна производителност на SQL Server