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

SQLServerデータベースで外部キー制約を削除する方法-SQLServer/TSQLチュートリアルパート75

    シナリオ:

    あなたはSQLServer開発者として働いており、dbo.Ordersテーブルに作成された外部キー制約を削除するスクリプトを準備する必要があります。

    解決策:

    以下のスクリプトを使用して、dbo.Customerおよびdbo.Ordersサンプルテーブルを作成し、createtableの一部として外部キー制約を含めましょう。
    USE YourDatabaseName
    GO
    
    CREATE TABLE dbo.Customer (
        Customerid INT PRIMARY KEY
        ,FName VARCHAR(100)
        ,LName VARCHAR(100)
        ,SSN VARCHAR(10)
        )
    
    
        CREATE TABLE dbo.Orders (
        OrderId INT Identity(1, 1)
        ,OrderitemName VARCHAR(50)
        ,OrderItemAmt INT
        ,Customer_id INT FOREIGN KEY REFERENCES Customer(CustomerId)
        )
    >
     
    テーブルが作成され、外部キー制約も作成されたら、以下のステートメントを使用して、テーブル名を持つ外部キー制約名を見つけることができます。
        USE YourDatabaseName
        GO
        Select 
        Schema_name(Schema_id) as SchemaName,
        object_name(Parent_object_id) as TableName,
        name as ForeignKeyConstraintName
        from sys.foreign_keys
     
     
    テーブル名を使用してSQLServerで外部キー制約名を検索
     
    これで制約名がわかったので、先に進んでドロップ制約ステートメントを記述できます。
    TableAlterテーブルの外部キー制約の削除の構文SchemaName.TableNameDrop制約Constraint_Name
    以下のステートメントを使用して削除しましたFK__Orders__Customer__164452B1外部キー制約。
        Alter table dbo.Orders
        Drop Constraint FK__Orders__Customer__164452B1
     
    データベース内のすべての外部キー制約を削除するスクリプトを生成する場合は、このリンクを確認してください。

    ビデオデモ:SQLServerで外部キー制約を削除する方法



    1. バインド変数を使用してテーブルと列の名前を動的に渡す

    2. GUIを使用してMySQLWorkbenchで現在の接続を表示する方法

    3. SQLServerクエリをMySQLに変換する

    4. クラウド内のMySQL-AmazonRDSからEC2インスタンスへのオンライン移行:パート1