Notez que ce que vous voulez vraiment, c'est une contrainte de clé étrangère. Cela dit, pour obtenir une "requête" dans une vérification, vous pouvez écrire une fonction qui contient la requête et génère une valeur scalaire, puis utiliser cette fonction dans la contrainte de vérification.
CREATE FUNCTION myFunction (
@field DATATYPE(?)
)
RETURNS VARCHAR(5)
AS
BEGIN
IF EXISTS (SELECT* FROM Table2 WHERE MYFIELD = @field)
return 'True'
return 'False'
END
Quelque chose comme ca. Non testé.
Ensuite, vous pouvez l'ajouter à votre chèque comme ceci
ALTER TABLE Table1
WITH CHECK ADD CONSTRAINT CK_Code
CHECK (myFunction(MYFIELD) = 'True')