powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Получение перечня таблиц схемы в БД Oracle
6 сообщений из 6, страница 1 из 1
Получение перечня таблиц схемы в БД Oracle
    #33875939
DIMA11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Получаю перечень таблиц следующим кодом:
Код: plaintext
1.
2.
3.
4.
5.
DatabaseMetaData meta = conn.getMetaData();
				ResultSet tables = meta.getTables( null ,  null ,  null ,
				 new  String[] { "TABLE" });
				 while  (tables.next())
				tableNames.addItem(tables.getString( 3 ));
				tables.close();
Проблема в том, что при наличии у данного юзера роли SELECT_CATALOG_ROLE,
в перечень таблиц попадают и те, которые ему не принадлежат. И при попытке выборки данных из них оракл выдает ошибку: Таблица пользователя не существует. Как можно получать только те таблицы, которые принадлежат подключившемуся пользователю?
...
Рейтинг: 0 / 0
Получение перечня таблиц схемы в БД Oracle
    #33876074
Фотография hinotf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
выполните запрос с возвратом реузльтата в ResultSet
select * from user_tables

Nai tiruvantel ar varyuvantel i Valar tieyanna nu vilya
...
Рейтинг: 0 / 0
Получение перечня таблиц схемы в БД Oracle
    #33876083
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hinotfвыполните запрос с возвратом реузльтата в ResultSet
select * from user_tables

Nai tiruvantel ar varyuvantel i Valar tieyanna nu vilya
зачем?
надо просто внимательно читать про параметры метода getTables()...
...
Рейтинг: 0 / 0
Получение перечня таблиц схемы в БД Oracle
    #33881280
DIMA11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если Вас не затруднит, приведите пример получения списка таблиц какой либо заданной схемы.
...
Рейтинг: 0 / 0
Получение перечня таблиц схемы в БД Oracle
    #33881522
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima11Если Вас не затруднит, приведите пример получения списка таблиц какой либо заданной схемы.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SQL> create user test_user identified by qqq;

User created.
...
SQL> conn test_user@test
Enter password: ***
Connected.
SQL> create table test_table(x int);

Table created.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
 import  java.sql.*;
 public   class  test 
{
     public   static   void  main(String[] args)  throws  Exception
    {
        DriverManager.registerDriver ( new  oracle.jdbc.driver.OracleDriver());
        Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:test", "tim", "t");
        DatabaseMetaData dbmd = conn.getMetaData();
        ResultSet rs = dbmd.getTables( null , "TEST_USER",  null ,  new  String[] {"TABLE"});
         while  (rs.next())
        {
            System.out.println(rs.getString("TABLE_NAME"));
        }
        rs.close();
        conn.close();
    }
}
Код: plaintext
1.
D:\temp>java -cp .; test
TEST_TABLE
...
Рейтинг: 0 / 0
Получение перечня таблиц схемы в БД Oracle
    #33882312
DIMA11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, я понял в чем была моя проблема - схему надо указывать большими буквами иначе список таблиц пуст.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Получение перечня таблиц схемы в БД Oracle
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]