Ich suche (vorzugsweise) eine SQL-Anweisung, die die Tabellen- / und Spaltennamen für jede Tabelle mit einem Fremdschlüssel für eine bestimmte Tabelle in Sybase auswählt. Ich denke, es sollte irgendwie mit den sys...
Tischen möglich sein, aber da ich für Sybase völlig neu bin, kann ich weder Kopf noch Fuß daraus machen. Daher wird jede Hilfe in die richtige Richtung sehr geschätzt.
Bearbeiten: Der Vollständigkeit halber: SELECT @@VERSION
kehrt zurück
'Adaptive Server Enterprise / 15.0.3 / EBF 17156 ESD # 3 / P / Sun_svr4 / OS 5.8 / ase1503 / 2726/64-Bit / FBO / Fr 5. Februar 05:26:23 2010'
Edit 2
Vielen Dank für Ihre Vorschläge, insbesondere für Andrew Bickertons Kommentar. Dadurch konnte ich eine rudimentäre SQL-Select-Anweisung erstellen, um einen weiteren Ausgangspunkt zu finden.
Falls sich jemand anderes dafür interessiert, hier ist es:
select
fko.name "Foreign key name",
par.name "Referenced table name",
fk1.name || ' -> ' || pk1.name "Reference 1",
fk2.name || ' -> ' || pk2.name "Reference 2",
fk3.name || ' -> ' || pk3.name "Reference 3",
fk4.name || ' -> ' || pk4.name "Reference 4"
from
sysobjects tab join
sysconstraints con on tab.id = con.tableid join
sysobjects fko on con.constrid = fko.id join
sysreferences ref on con.constrid = ref.constrid join
sysobjects par on par.id = ref.reftabid left join
---- 1. Column
syscolumns fk1 on ref.fokey1 = fk1.colid and
ref.tableid = fk1.id left join
syscolumns pk1 on ref.refkey1 = pk1.colid and
ref.reftabid = pk1.id left join
---- 2. Column
syscolumns fk2 on ref.fokey2 = fk2.colid and
ref.tableid = fk2.id left join
syscolumns pk2 on ref.refkey2 = pk2.colid and
ref.reftabid = pk2.id left join
---- 3. Column
syscolumns fk3 on ref.fokey3 = fk3.colid and
ref.tableid = fk3.id left join
syscolumns pk3 on ref.refkey3 = pk3.colid and
ref.reftabid = pk3.id left join
---- 4. Column
syscolumns fk4 on ref.fokey4 = fk4.colid and
ref.tableid = fk4.id left join
syscolumns pk4 on ref.refkey4 = pk4.colid and
ref.reftabid = pk4.id -- Et cetera...
where
tab.type = 'U' and
tab.name = 'tq84_f' and
fko.type = 'RI'