Herkese merhaba,
Bu yazıda SQL Server’da tüm foreign keyleri kaldırma ve oluşturma kodları hakkında bilgi vereceğim.
SQL Server’da bazı durumlarda tüm foreign keyleri kaldırmak ve yeniden oluşturmak isteyebilirsiniz.
Aşağıdaki kod yardımıyla bu işlemi rahatlıkla yapabilirsiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
SELECT 'ALTER TABLE ' + s.Name + '.' + OBJECT_NAME(fk.parent_object_id) + ' DROP CONSTRAINT ' + fk.Name + ' ;' AS DropStatement, 'ALTER TABLE ' + s.Name + '.' + OBJECT_NAME(fk.parent_object_id) + ' ADD CONSTRAINT ' + fk.Name + ' FOREIGN KEY (' + COL_NAME(fk.parent_object_id, fkc.parent_column_id) + ') REFERENCES ' + ss.Name + '.' + OBJECT_NAME(fk.referenced_object_id) + '(' + COL_NAME(fk.referenced_object_id, fkc.referenced_column_id) + ');' AS CreateStatement FROM sys.foreign_keys fk INNER JOIN sys.foreign_key_columns fkc ON fk.object_id = fkc.constraint_object_id INNER JOIN sys.schemas s ON fk.schema_id = s.schema_id INNER JOIN sys.tables t ON fkc.referenced_object_id = t.object_id INNER JOIN sys.schemas ss ON t.schema_id = ss.schema_id; |
Kodu çalıştırdığınızda aşağıdaki gibi bir sonuç alacaksınız.
Görüldüğü üzere tüm foreign keyleri kaldırma ve oluşturulma kodları listelenmiş oldu.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.
