Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Jatuhkan Semua kendala dalam Tabel

Anda selalu dapat menyalin output dari panel bawah, menempelkannya ke panel atas, dan tekan F5. Atau Anda dapat membuat string untuk dieksekusi secara langsung:

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;

(Bila Anda senang dengan PRINT output, beri komentar dan batalkan komentar pada EXEC . Perhatikan bahwa hasil cetak akan dipotong menjadi 8K di Management Studio tetapi variabel tersebut benar-benar menampung seluruh perintah.)

Saya juga tidak tahu bagaimana ini benar-benar berhubungan dengan apakah Anda menggunakan prosedur tersimpan atau tidak, atau mengapa Anda mencoba melakukannya "tanpa menggunakan SP"... kueri ini dapat dijalankan sebagai prosedur tersimpan atau tidak, itu semua tergantung pada seberapa sering Anda akan memanggilnya, di mana prosedurnya, dll.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Beberapa Koneksi Dengan String Koneksi Yang Sama Dalam Satu Transaksi, Transaksi Ditingkatkan?

  2. Bagaimana Fungsi SPACE() Bekerja di SQL Server (T-SQL)

  3. Cara menanyakan Tabel SQL dan menghapus baris duplikat dari kumpulan hasil

  4. Izin EXECUTE ditolak pada tipe tabel yang ditentukan pengguna?

  5. Menemukan acara simultan dalam database antara waktu