SORU
13 Kasım 2009, Cuma


Liste yabancı anahtarları ve tablo onlar başvurusu

Bana bir tablo için yabancı anahtar bir liste ve referans tabloları ve sütunları iade edileceği sorgu bulmaya çalışıyorum. Yol ile benim yarım kadar

SELECT a.table_name, 
       a.column_name, 
       a.constraint_name, 
       c.owner
FROM ALL_CONS_COLUMNS A, ALL_CONSTRAINTS C  
where A.CONSTRAINT_NAME = C.CONSTRAINT_NAME 
  and a.table_name=:TableName 
  and C.CONSTRAINT_TYPE = 'R'

Ama yine de bu anahtar tarafından başvurulan bilmek gerek. Bu nasıl gidebilirim?

CEVAP
13 Kasım 2009, Cuma


başvurulan birincil anahtar sütunları r_owner masa ALL_CONSTRAINTS r_constraint_name açıklanmıştır. Bu size istediğiniz bilgileri verecektir:

SELECT a.table_name, a.column_name, a.constraint_name, c.owner, 
       -- referenced pk
       c.r_owner, c_pk.table_name r_table_name, c_pk.constraint_name r_pk
  FROM all_cons_columns a
  JOIN all_constraints c ON a.owner = c.owner
                        AND a.constraint_name = c.constraint_name
  JOIN all_constraints c_pk ON c.r_owner = c_pk.owner
                           AND c.r_constraint_name = c_pk.constraint_name
 WHERE c.constraint_type = 'R'
   AND a.table_name = :TableName

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DancingIsAPassion

    DancingIsAPa

    29 AĞUSTOS 2009
  • GFX Tutorials

    GFX Tutorial

    12 AĞUSTOS 2013
  • Video-Tutorials.Net

    Video-Tutori

    15 Mart 2011