Contrainte de vérification SQL pour plusieurs colonnes

Je suis nouveau à la SQL CHECK CONSTRAINT et j'ai besoin de quelque chose pour vérifier qu'une combinaison de trois colonnes dans ma table ne correspond pas à celles d'une autre rangée.

J'ai une table de rapport comprenant trois colonnes que je dois vérifier par: NAME, CREATEDBY, et TYPE. Aucun multiple d'une ligne avec ces trois valeurs étant identique peut être créé.

S'il vous plaît aider!

 CREATE TABLE Report( ReportID INT IDENTITY(1,1) NOT NULL, [Name] VARCHAR(255) NOT NULL, CreatedBy VARCHAR(50) NOT NULL, [Type] VARCHAR(50) NOT NULL, PageSize INT NOT NULL DEFAULT 25, Criteria XML NOT NULL CONSTRAINT CHK_Name_CreatedBy_Type CHECK ([Name], CreatedBy, [Type]) ) ALTER TABLE Report ADD CONSTRAINT PK_Report PRIMARY KEY (ReportID) 

Évidemment, la contrainte n'a actuellement aucun sens car elle ne fournit pas de boolean …

 CONSTRAINT CHK_Name_CreatedBy_Type CHECK ([Name], CreatedBy, [Type]) 

Merci d'avance!!

Vous avez besoin d'une contrainte UNIQUE:

 CONSTRAINT UNQ_Name_CreatedBy_Type UNIQUE ([Name], CreatedBy, [Type])