sql >> Database teknologi >  >> RDS >> Sqlserver

Slip primær nøgle ved hjælp af script i SQL Server-database

Du kan slå begrænsningsnavnet op i tabellen sys.key_constraints:

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

Hvis du er ligeglad med navnet, men blot ønsker at droppe det, kan du bruge en kombination af dette og dynamisk 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;

Denne kode er fra Aaron Bertrand (kilde).



  1. Ruby gem mysql2 installation mislykkedes

  2. Brug bundet parameter flere gange

  3. Hvordan ændrer man MySQL-tabelnavne i Linux-serveren, så de ikke skelner mellem store og små bogstaver?

  4. Sådan gør du dine adgangsdatabaser ultrahurtige!