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

Upuść wszystkie ograniczenia w tabeli

Cóż, zawsze możesz skopiować dane wyjściowe z dolnego panelu, wkleić je do górnego panelu i nacisnąć F5. Możesz też zbudować ciąg do bezpośredniego wykonania:

DECLARE @sql NVARCHAR(MAX) = N'';

SELECT @sql += N'
ALTER TABLE ' + QUOTENAME(OBJECT_SCHEMA_NAME(parent_object_id))
    + '.' + QUOTENAME(OBJECT_NAME(parent_object_id)) + 
    ' DROP CONSTRAINT ' + QUOTENAME(name) + ';'
FROM sys.foreign_keys;

PRINT @sql;
-- EXEC sp_executesql @sql;

(Kiedy jesteś zadowolony z PRINT skomentować i odkomentować EXEC . Zauważ, że wydruk zostanie obcięty do 8K w Management Studio, ale zmienna tak naprawdę zawiera całe polecenie).

Nie wiem też, jak to się naprawdę odnosi do tego, czy używasz procedury składowanej, czy nie, ani dlaczego próbujesz to zrobić „bez korzystania z SP”… to zapytanie można uruchomić jako procedurę składowaną lub nie, wszystko zależy od tego, jak często będziesz dzwonić, gdzie znajduje się procedura itp.



  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 tworzyć zadania w edycji SQL Server Express

  2. Jaka jest różnica między unikalnym kluczem z ograniczeniem „nie zerowym” a kluczem podstawowym?

  3. IN Operator SQL

  4. Jak uzyskać wszystkie błędy wszystkich pakietów SSIS w rozwiązaniu?

  5. WYBRAĆ wiersze z czasem 30 minut lub krótszym?