Jak wyświetlić wszystkie tabele w bazie danych, które zawierają kolumnę o danej nazwie?Jak utworzyć listę tabel na podstawie nazwy kolumny w sybase?
12
A
Odpowiedz
21
Spróbuj tego:
select distinct object_name(id)
from syscolumns
where name = 'my_column_name'
order by object_name(id)
lub w ten sposób:
select distinct so.name
from syscolumns sc
, sysobjects so
where sc.id = so.id
and sc.name = 'my_column_name'
order by so.name
jest, że to, czego szukałeś?
2
Można również użyć procedury przechowywanej sp_columns.
sp_columns @column_name = '%column_name%'
Więcej informacji tutaj: SyBooks Online (Getting Help On Database Objects)
1
poniższe zapytanie może być używany do dostać nazwa_kolumny z table_name również.
Pomoże to użytkownikowi zidentyfikować tabelę, do której należy nazwa_kolumny.
select distinct tbl_col.name as Field_name,tbl_object.name as Table_name
from syscolumns tbl_col
, sysobjects tbl_object
where tbl_col.id = tbl_object.id
order by tbl_object.name
+0
Bezcenne. Dziękuję Ci. – datv
Czy możesz być bardziej konkretny? Czy chcesz wyświetlić listę kolumn w tabeli, czy szukasz wszystkich tabel zawierających kolumnę lub coś innego? –