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

SQLServerデータベースのスクリプトを使用して主キーを削除します

    制約名はsys.key_constraintsテーブルで検索できます:

    SELECT name
    FROM   sys.key_constraints
    WHERE  [type] = 'PK'
           AND [parent_object_id] = Object_id('dbo.Student');
    

    名前を気にせず、単に名前を削除したい場合は、これと動的SQLを組み合わせて使用​​できます:

    DECLARE @table NVARCHAR(512), @sql NVARCHAR(MAX);
    
    SELECT @table = N'dbo.Student';
    
    SELECT @sql = 'ALTER TABLE ' + @table 
        + ' DROP CONSTRAINT ' + name + ';'
        FROM sys.key_constraints
        WHERE [type] = 'PK'
        AND [parent_object_id] = OBJECT_ID(@table);
    
    EXEC sp_executeSQL @sql;
    

    このコードはAaronBertrand(ソース)からのものです。



    1. PostgreSQLの関数からテーブルタイプを返す

    2. CAST()を使用してSQLServerで日付形式を変換する方法

    3. SQL2005のPIVOT

    4. MySQLWorkbenchでデータベース図を作成する