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

  • Hak5DarrensVlog

    Hak5DarrensV

    11 EYLÜL 2009
  • Alexey - servant of Christ

    Alexey - ser

    15 EYLÜL 2007
  • OnlyFunClips

    OnlyFunClips

    16 ŞUBAT 2012