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

Jak usunąć ograniczenie klucza obcego tylko wtedy, gdy istnieje na serwerze sql?

Jest to o wiele prostsze niż obecnie proponowane rozwiązanie:

IF (OBJECT_ID('dbo.FK_ConstraintName', 'F') IS NOT NULL)
BEGIN
    ALTER TABLE dbo.TableName DROP CONSTRAINT FK_ConstraintName
END

Jeśli chcesz usunąć inny typ ograniczenia, oto odpowiednie kody, które należy przekazać do funkcji OBJECT_ID() w drugiej pozycji parametru:

C = CHECK constraint
D = DEFAULT (constraint or stand-alone)
F = FOREIGN KEY constraint
PK = PRIMARY KEY constraint
UQ = UNIQUE constraint

Możesz również użyć OBJECT_ID bez drugiego parametru.

Pełna lista typów tutaj :

Typ obiektu:

Dotyczy:SQL Server 2012 do SQL Server 2014.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zduplikować tabelę na serwerze SQL (w tym PK i FK)

  2. Połącz OUTPUT insert.id z wartością z wybranego wiersza

  3. Przechowuj wiele wartości bitowych w jednej kolumnie tabeli

  4. ZŁĄCZENIE WEWNĘTRZNE Gdzie Klauzula

  5. nie można połączyć się z komputerem nazwa\SQLEXPRESS