Софтуерно Инженерство
Loading...
DarianaStefanova avatar DarianaStefanova 0 Точки

SQL drop table problem with foreign key

Здравейте, имам следния проблем създавам таблица в базата си от данни като трябва да направя проверка дали съществува таблица и ако съществува да се изтрие, но когато създавам връзката между тях не ми изтрива таблицата,заради свързаростта им по ключове. Пробвах със следната проверка, но резултата е същия

IF EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'dbo.FK<name>')
    AND parent_object_id = OBJECT_ID(N'dbo.Table'))

ALTER TABLE dbo.Table DROP CONSTRAINT FK<name>

 

Някои може ли да ми помогне?

 

 

Тагове:
0
Databases Basics
DragomirProychev avatar DragomirProychev 7 Точки

В този случай трябва да обходиш всички foreign keyove от останалите таблици и да изтриеш тези, които сочат към таблицата, която искаш да изтриеш. Мисля че това ще ти помогне https://stackoverflow.com/questions/1776079/sql-drop-table-foreign-key-constraint .

И по точно тази част : 

SELECT 
    'ALTER TABLE [' +  OBJECT_SCHEMA_NAME(parent_object_id) +
    '].[' + OBJECT_NAME(parent_object_id) + 
    '] DROP CONSTRAINT [' + name + ']'
FROM sys.foreign_keys
WHERE referenced_object_id = object_id('Student')
0