2010-08-14 7 views
2

Я хочу написать запрос, чтобы получить имена таблиц конкретной базы данных, но я не знаю, как это записать.Получить таблицы базы данных

Я хочу выполнить этот запрос для MS Access 2007 и Oracle 11g.

Благодаря

+0

Используете ли вы уровень абстракции базы данных, например, JDBC или DBI perl? Многие такие структуры имеют методы для перечисления каталогов, схемы и объектов базы данных (таблиц, представлений и т. Д.), Которые применяются конкретными драйверами. – pilcrow

+0

Я думаю, что он просто означает запрос, чтобы получить список таблиц назад. – 2010-08-14 14:23:38

+0

@ AJ, справа. Эта функциональность уже существует, если кодер не должен беспокоиться о той или иной версии той или иной РСУБД (например, $ dbh-> tables() в DBI). – pilcrow

ответ

2

Если вы хотите сырые, прямые запросы:

Oracle:

SELECT * FROM user_tables 

Для MS Access:

SELECT * FROM MSysObjects WHERE [Type] In (1, 4, 6) 

(сортировка и расширенные возможности фильтрации опущено для краткости .)

+0

спасибо Пол Сасик. – Farna

+0

В зависимости от контекста вы можете получить ошибку разрешений в запросе MS Access. –

Смежные вопросы