sql >> データベース >  >> RDS >> Sqlserver

SQLServerデータベースですべてのチェック制約を有効にする方法-SQLServer/TSQLチュートリアルパート88

    シナリオ:

    SQLServer開発者またはETL開発者として作業しています。データをロードする前にSQLServerデータベースのすべてのチェック制約を無効にしました。 SQLServerデータベースで無効になっているすべてのチェック制約に対して有効なチェック制約スクリプトを生成できるスクリプトを提供する必要があります。

    解決策:

    システムオブジェクトを使用して、EnableCheckConstraintsスクリプトを生成できます。以下のクエリを使用して、チェック制約を有効にするスクリプトを生成できます。すべてのチェック制約を有効にしたくない場合は、where句でオブジェクトをさらにフィルタリングできます。
     --Generate Script to Enable All Check Constraint in SQL Server Database
     Select DB_Name() AS DBName,
     Schema_Name(Schema_id) AS TableSchema,
     Object_name(parent_object_id) as TableName,
      definition,
      'Alter Table [' + Schema_Name(Schema_id) 
        + '].[' + Object_name(parent_object_id) 
        + ']' + ' CHECK  CONSTRAINT ' 
        + '[' + NAME + ']' AS EnableCheckConstraint
     From sys.check_constraints
     where is_disabled=1
     
     を生成する方法 
    SQLServerデータベースですべてのチェック制約スクリプトを有効にする
     EnableCheckConstraint列から結果をコピーし、SSMSに貼り付けて、実行します。

    Alter Table [dbo].[Customer22] CHECK  CONSTRAINT [CK__Customer2__FName__6C190EBB]
    Alter Table [dbo].[Employee] CHECK  CONSTRAINT [CK__Employee__FName__7A672E12]
     
     
    Video Demo : How to generate Scripts to enable all Check Constraints
    in SQL Server Database
    
    
    
    

    1. XML PATH('')の場合:特殊文字のエスケープ

    2. MySQLドロップデータベース

    3. SQLiteUNIQUE制約

    4. PostgreSQLはWindowsで名前を処理します