Есть ли какие-либо sql или ещё какие-либо команды, возвращающие названия tables в базе данных, и есть какие-либо команды, возвращающие названия колонок в конкретной table?
В VB или C#.
Имена таблиц и колонок
Модератор: Саша З.
Mожет, эта дискуссия поможет?
http://forums.devshed.com/oracle-develo ... 35613.html
Я-то с SQL Server работаю. Там это просто делается
http://forums.devshed.com/oracle-develo ... 35613.html
Я-то с SQL Server работаю. Там это просто делается
Все будет так, как должно быть, даже если будет наоборот...
В дискуссии предлагают для списка таблиц несколько вариантов:
1) select * from user_objects where object_type = 'TABLE'
2) SELECT table_name FROM tabs
3) select TABLE_NAME from ALL_ALL_TABLES
в SQL Server можно использовать либо stored proc:
Для списка таблиц: exec sp_tables
Для списка столбцов в таблице: exec sp_columns <table name>
либо запросить непосредственно из БД
Для таблиц:
select * from sys.sysobjects where xtype = 'U'
Для столбцов в таблице
SELECT sys.syscolumns.* FROM sys.sysobjects INNER JOIN
sys.syscolumns ON sys.sysobjects.id = sys.syscolumns.id
WHERE (sys.sysobjects.xtype = 'U') AND (sys.sysobjects.name = <name of your table>)
1) select * from user_objects where object_type = 'TABLE'
2) SELECT table_name FROM tabs
3) select TABLE_NAME from ALL_ALL_TABLES
в SQL Server можно использовать либо stored proc:
Для списка таблиц: exec sp_tables
Для списка столбцов в таблице: exec sp_columns <table name>
либо запросить непосредственно из БД
Для таблиц:
select * from sys.sysobjects where xtype = 'U'
Для столбцов в таблице
SELECT sys.syscolumns.* FROM sys.sysobjects INNER JOIN
sys.syscolumns ON sys.sysobjects.id = sys.syscolumns.id
WHERE (sys.sysobjects.xtype = 'U') AND (sys.sysobjects.name = <name of your table>)
Все будет так, как должно быть, даже если будет наоборот...
SELECT TABLE_NAME FROM ALL_TABLES;
SELECT TABLE_NAME FROM USER_TABLES;
SELECT TABLE_NAME, COLUMN_NAME FROM ALL_TAB_COLUMNS;
SELECT TABLE_NAME, COLUMN_NAME FROM USER_TAB_COLUMNS;
ALL_ALL_TABLES includes also object tables
Prefix USER_ is just for your schema
Prefix ALL_ is for all schemas you have access
SELECT TABLE_NAME FROM USER_TABLES;
SELECT TABLE_NAME, COLUMN_NAME FROM ALL_TAB_COLUMNS;
SELECT TABLE_NAME, COLUMN_NAME FROM USER_TAB_COLUMNS;
ALL_ALL_TABLES includes also object tables
Prefix USER_ is just for your schema
Prefix ALL_ is for all schemas you have access
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 45 гостей