Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Usuń klucz podstawowy za pomocą skryptu w bazie danych SQL Server

Możesz wyszukać nazwę ograniczenia w tabeli sys.key_constraints:

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

Jeśli nie zależy Ci na nazwie, ale po prostu chcesz ją usunąć, możesz użyć kombinacji tego i dynamicznego 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;

Ten kod pochodzi od Aarona Bertranda (źródło).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Unpivot z nazwą kolumny

  2. Jak wykryć, czy wartość zawiera co najmniej jedną liczbę w SQL Server?

  3. Wersjonowanie bazy danych SQL Server

  4. 3 sposoby na uzyskanie języka bieżącej sesji w SQL Server (T-SQL)

  5. Usuń wiadomości e-mail bazy danych z bazy danych msdb w programie SQL Server (T-SQL)