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

Batasan Unik Multi Kolom TSQL Yang Juga Memungkinkan Beberapa Null

Anda dapat menambahkan indeks berikut untuk mengindeks hanya kolom yang tidak dapat dibatalkan:

create table tblEmployee(col1 int, col2 int)
go

create unique nonclustered index idx_col1col2_notnull ON tblEmployee(col1,col2) 
where col1 is not null and col2 is not null
go

--This Insert successeds
insert into tblEmployee values
(null, null),
(null, null),
(1, null),
(1, null),
(null, 2),
(null, 2)

--This Insert fails
insert into tblEmployee values
(3, 4),
(3, 4)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menyimpan hasil Pivot dinamis ke dalam tabel sementara di SQL Server

  2. Menemukan Batasan Kunci Utama dengan cepat di SQL Server 2005

  3. Kesalahan I/O:SSO Gagal:Pustaka SSPI asli tidak dimuat

  4. SQL Server:Untuk apa pernyataan batching (yaitu menggunakan GO)?

  5. Bagaimana cara mendapatkan Waktu dari format DateTime dalam SQL?