スクリプトを繰り返し実行できるように、2 番目ALTER TABLE
CHECK CONSTRAINT
を にする必要がありますか?IF (NOT) EXISTS
IF NOT EXISTS (
SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
WHERE CONSTRAINT_NAME ='fk_RoleId'
)
BEGIN
ALTER TABLE [dbo].[webpages_UsersInRoles] WITH CHECK ADD CONSTRAINT [fk_RoleId] FOREIGN KEY([RoleId])
REFERENCES [dbo].[webpages_Roles] ([RoleId])
END
GO
-- Put me in an IF ... () BEGIN ... END?
ALTER TABLE [dbo].[webpages_UsersInRoles] CHECK CONSTRAINT [fk_RoleId]
GO
エラーは発生しませんが、IF
節に含める必要がある場合、実行されたかどうかをどのようにテストしますか (if には何が含まれますか)?