SORU
21 Kasım 2009, CUMARTESİ


SQL TABLO yabancı anahtar kısıtlaması

Eğer böyle benim veritabanındaki tüm tabloları silmek istiyorsam, yabancı anahtar kısıtlaması ilgilenecek? Nasıl ilk dikkat yapmak durumunda değil mi?

GO
IF OBJECT_ID('dbo.[Course]','U') IS NOT NULL
    DROP TABLE dbo.[Course]
GO
IF OBJECT_ID('dbo.[Student]','U') IS NOT NULL
    DROP TABLE dbo.[Student]

CEVAP
21 Kasım 2009, CUMARTESİ


Hayır, Eğer gerçekten yabancı anahtarları o başvuran var tablonuzu düşecek.

Tüm yabancı anahtar ilişkileri tablo referans almak, bu SQL SQL Server ve 2005 değilseniz kullanabilirsiniz:

SELECT * 
FROM sys.foreign_keys
WHERE referenced_object_id = object_id('Student')

eğer, bu ifade, burada ise orada, aslında bu FK ilişkileri bırakmak için SQL ifadeleri oluşturabilirsiniz:

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')

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 8bitdigitaltv

    8bitdigitalt

    31 AĞUSTOS 2011
  • BradleyWuzHere

    BradleyWuzHe

    25 NİSAN 2011
  • spectragirlz16's channel

    spectragirlz

    22 Ocak 2012