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

Защо да използвате първичен ключ без null в TSQL?

Редактирано за яснота

Според спецификацията на SQL първичният ключ не може да съдържа NULL. Това означава, че декорирането на колона с „NOT NULL PRIMARY KEY“ или просто „PRIMARY KEY“ трябва да направи същото. Но вие разчитате на въпросния SQL двигател, който правилно следва SQL стандарта. Като пример поради ранен бъг, SQL Lite не прилага правилно стандарта и позволява нулеви стойности в нецелочислени първични ключове (вижте sqlite.org/lang_createtable.html). Това би означавало за (поне) SQLLite двата израза правят две различни неща.

Тъй като „NOT NULL PRIMARY KEY“ ясно показва намерението и продължава да налага ненулеви стойности, дори ако първичният ключ бъде премахнат, това трябва да бъде предпочитаният синтаксис.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да автоматизирате процеса на синхронизиране на схемата на база данни на SQL Server

  2. Разделете една колона на няколко реда

  3. SQL производителност при LEFT OUTER JOIN срещу NOT EXISTS

  4. кръстосаното прилагане на xml заявката работи експоненциално по-зле с нарастването на xml документа

  5. Как да се свържете с база данни на SQL сървър от приложение за Windows 10 UWP