Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana cara membuat batasan unik yang juga memungkinkan nol?

Apa yang Anda cari memang bagian dari standar ANSI SQL:92, SQL:1999 dan SQL:2003, yaitu batasan UNIK harus melarang duplikat nilai non-NULL tetapi menerima beberapa nilai NULL.

Namun di dunia Microsoft SQL Server, satu NULL diperbolehkan tetapi beberapa NULL tidak...

Di SQL Server 2008 , Anda dapat menentukan indeks terfilter unik berdasarkan predikat yang mengecualikan NULL:

CREATE UNIQUE NONCLUSTERED INDEX idx_yourcolumn_notnull
ON YourTable(yourcolumn)
WHERE yourcolumn IS NOT NULL;

Di versi sebelumnya, Anda dapat menggunakan VIEWS dengan predikat NOT NULL untuk menerapkan batasan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memformat angka dengan koma di T-SQL?

  2. SQL Server 2016:Buat Tampilan

  3. Konfigurasikan Pekerjaan SQL di SQL Server menggunakan T-SQL

  4. Prosedur tersimpan - kembalikan identitas sebagai parameter keluaran atau skalar

  5. Pencadangan/pemulihan SQL Server vs. detach/attach