Je suis nouveau au 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 ligne.Contrainte SQL Check pour plusieurs colonnes
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éé.
Aidez s'il vous plaît!
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)
De toute évidence, la contrainte fait actuellement aucun sens car elle ne fournit pas une valeur booléenne ...
CONSTRAINT CHK_Name_CreatedBy_Type CHECK ([Name], CreatedBy, [Type])
Merci d'avance !!
Ah-hah! Cela donne beaucoup plus de sens. Merci pour la réponse rapide! – BueKoW