Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

KIỂM TRA CONSTRAINT trên nhiều cột

Có, xác định KIỂM TRA CONSTRAINT tại bảng cấp độ

CREATE TABLE foo (
   bar int NOT NULL, 
   fred varchar(50) NOT NULL,

   CONSTRAINT CK_foo_stuff CHECK (bar = 1 AND fred ='fish')
)

Bạn đang khai báo nó nội tuyến dưới dạng cột ràng buộc

...
fred varchar(50) NOT NULL CONSTRAINT CK_foo_fred CHECK (...)
...

Chỉnh sửa, dễ đăng hơn là mô tả. Đã sửa dấu phẩy của bạn.

CREATE TABLE dbo.Test 
(   
  EffectiveStartDate  dateTime2(2)        NOT NULL,
  EffectiveEndDate    dateTime2(2)        NOT NULL,  --need comma
  CONSTRAINT CK_CmsSponsoredContents_EffectiveEndDate CHECK (EffectiveEndDate > EffectiveStartDate) --no comma
);

Tất nhiên, câu hỏi vẫn còn là bạn đang sử dụng ràng buộc CHECK, nơi nó phải là ràng buộc FK ...?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chuyển phân vùng bảng trong SQL Server:Hướng dẫn

  2. Chuyển mảng int sang proc được lưu trữ T-SQL thông qua khung thực thể

  3. Cách trả lại giá trị chuyển đổi hàng hiện tại cho cơ sở dữ liệu máy chủ SQL (Ví dụ T-SQL)

  4. nvarchar (tối đa) so với NText

  5. Cách bỏ một cột có ràng buộc trong SQL Server