Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menggugurkan Kekangan Lalai dalam Pelayan SQL Apabila Nama Mereka Tidak Diketahui?

Bagaimana untuk Menggugurkan Kekangan Lalai dalam Pelayan SQL Apabila Nama Mereka Tidak Diketahui?

Barbara Streisand
Lepaskan: 2025-01-03 18:56:39
asal
211 orang telah melayarinya

How to Drop Default Constraints in SQL Server When Their Names Are Unknown?

Menggugurkan Kekangan Lalai dengan Nama Tidak Diketahui dalam Pelayan Microsoft SQL

Soalan ini menangani cabaran untuk mengalih keluar kekangan lalai daripada jadual SQL apabila nama mereka adalah tidak diketahui, kerana kemungkinan kesilapan menaip. Pertanyaan sedia ada, seperti yang disediakan oleh pengguna, memerlukan nama kekangan yang tepat untuk pelaksanaan, yang boleh menimbulkan masalah dalam situasi tertentu.

Penyelesaian

Penyelesaian yang dicadangkan melibatkan menjana dan melaksanakan perintah SQL dinamik untuk melepaskan kekangan berdasarkan jadual, lajur dan maklumat skema yang disediakan. Coretan kod yang dikongsi oleh pengguna boleh dikembangkan seperti berikut:

declare @schema_name nvarchar(256)
declare @table_name nvarchar(256)
declare @col_name nvarchar(256)
declare @Command  nvarchar(1000)

set @schema_name = N'MySchema'
set @table_name = N'Department'
set @col_name = N'ModifiedDate'

select @Command = 'ALTER TABLE ' + @schema_name + '.[' + @table_name + '] DROP CONSTRAINT ' + d.name
from sys.tables t
join sys.default_constraints d on d.parent_object_id = t.object_id
join sys.columns c on c.object_id = t.object_id and c.column_id = d.parent_column_id
where t.name = @table_name
and t.schema_id = schema_id(@schema_name)
and c.name = @col_name

--print @Command

execute (@Command)
Salin selepas log masuk

Kod ini menjana perintah SQL yang diperlukan untuk melepaskan kekangan lalai untuk jadual dan lajur tertentu dalam skema tertentu. Perintah itu dibina secara dinamik berdasarkan parameter yang disediakan, memastikan ia boleh dilaksanakan tanpa sebarang ralat SQL walaupun nama kekangan tidak diketahui.

Atas ialah kandungan terperinci Bagaimana untuk Menggugurkan Kekangan Lalai dalam Pelayan SQL Apabila Nama Mereka Tidak Diketahui?. 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