vs 2010 スキーム比較ツールを使用してデータベースを比較してきましたが、明確でないものがいくつか生成されました。たとえば、スクリプトの最後に次のステートメントがあります。
ALTER TABLE [dbo].[My_table] WITH CHECK CHECK CONSTRAINT [FK_FOREIGN_ID];
誰がこれが何を意味するのか説明できますか?
vs 2010 スキーム比較ツールを使用してデータベースを比較してきましたが、明確でないものがいくつか生成されました。たとえば、スクリプトの最後に次のステートメントがあります。
ALTER TABLE [dbo].[My_table] WITH CHECK CHECK CONSTRAINT [FK_FOREIGN_ID];
誰がこれが何を意味するのか説明できますか?
これは、既存のデータを追加するときに、制約に対してチェックする必要があることを意味します。
制約を信頼できないCHECK CHECK
ままにしないと、クエリ オプティマイザーで使用できなくなります。
これにより、SQL Server は新しい行に対して制約を検証するように指示されます。反例WITH NOCHECK
は、新しい行の検証チェックを一時的に無効にするために使用することです。