Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Пуснете първичния ключ с помощта на скрипт в базата данни на SQL Server

Можете да потърсите името на ограничението в таблицата 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;

Този код е от Aaron Bertrand (източник).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Драйверът Go with SQL Server не може да се свърже успешно, неуспешно влизане

  2. sql сървър невалидно име на обект - но таблиците са изброени в списъка с SSMS таблици

  3. Поправете съобщение 512 „Подзаявката върна повече от 1 стойност“ в SQL Server

  4. ИЗБЕРЕТЕ ЗА XML AUTO и върнете типове данни

  5. Можем ли да предадем параметри на изглед в SQL?