Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menggugurkan Jadual Pelayan SQL dengan Kekangan Lata?

Bagaimana untuk Menggugurkan Jadual Pelayan SQL dengan Kekangan Lata?

Barbara Streisand
Lepaskan: 2024-12-29 10:52:09
asal
380 orang telah melayarinya

How to Drop a SQL Server Table with Cascading Constraints?

SQL Server: Drop Table dengan Cascading Constraints

Dalam Oracle, pilihan "CASCADE CONSTRAINTS PURGE" dalam pernyataan DROP TABLE membenarkan pengalihan keluar jadual dan kekangan dan data bergantungnya.

fungsi yang setara dalam SQL Server tidak tersedia melalui satu arahan. Walau bagaimanapun, terdapat dua cara alternatif untuk mencapai hasil yang diingini:

Menggunakan Pilihan Skrip:

  1. Buka Studio Pengurusan Pelayan SQL.
  2. Navigasi ke: Alat > Pilihan > Penjelajah Objek Pelayan SQL > Skrip
  3. Dayakan kotak semak "Janakan skrip untuk objek bergantung".
  4. Klik kanan pada jadual yang anda mahu lepaskan.
  5. Pilih "Skrip > Gugurkan ke > Tetingkap Pertanyaan Baharu."

Ini akan menjana skrip yang merangkumi semua objek bergantung dan akan digugurkan mereka dalam susunan yang betul.

Menggunakan Prosedur Tersimpan Rekursif:

  1. Buat prosedur tersimpan rekursif yang menjatuhkan jadual dan semua objek bergantungnya.
    cth.:
CREATE PROC DropTableCascade (@TableName nvarchar(max))
AS
BEGIN
 IF OBJECT_ID(@TableName) IS NOT NULL
 BEGIN
  EXEC sp_MSForEachTable 'IF "{DB_NAME()}.dbo.' + name in (SELECT name FROM sysobjects WHERE type = ''U'' AND parent_id = OBJECT_ID(@TableName)) BEGIN PRINT ''Dropping table '' + ''{DB_NAME()}.dbo.'' + name PRINT ''DELETE FROM '' + ''{DB_NAME()}.dbo.'' + name + ''; DROP TABLE '' + ''{DB_NAME()}.dbo.'' + name + ''; END'
  DROP TABLE @TableName
 END
END
Salin selepas log masuk
  1. Panggil prosedur tersimpan dengan nama jadual yang anda mahu jatuhkan:
EXEC DropTableCascade 'YourTableName'
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menggugurkan Jadual Pelayan SQL dengan Kekangan Lata?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan