Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Java -> JDBC -> ODBC -> Access.


Автор: Shovkoviy 7.11.2007, 19:28
Здравствуйте.

Приложение работает с базой MS Access. ( Java -> JDBC -> ODBC -> MS Access )
Необходимо получить описание таблиц и полей базы Access.
Есть код:
Код

String[] supportedTableTypes = new String[2];
int l=0;
supportedTableTypes[l++] = "TABLE";
supportedTableTypes[l++] = "VIEW";
try 
{            
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");            
      Connection con = DriverManager.getConnection("jdbc:odbc:test");
      DatabaseMetaData meta = con.getMetaData();            
      ResultSet rs = meta.getTables(null, null, "%", supportedTableTypes);    
      while (rs.next())
      {                
          String tCatalog = rs.getString(1);       // TABLE_CAT
          String tSchema = rs.getString(2);        // TABLE_SCHEM
          String tName = rs.getString(3);          // TABLE_NAME
          String tType = rs.getString(4);          // TABLE_TYPE
          String tDescription = rs.getString(5);   // REMARKS      
     }
} 
catch (Exception e) {...}

Переменная tDescription - не возвращает описание таблицы она всегда = NULL.
Этот способ не подходит.

Подскажите, пожалуйста, каким другим способом можно достать описание таблиц и описание колонок?

Автор: AntonSaburov 7.11.2007, 19:33
Очень может быть, что JDBC это не поддерживает. Или даже ODBC не поддерживает.

А как сделать - для JDBC - не знаю. Можно покопаться через ODBC - но возможно, что и это не получится.

Автор: LSD 7.11.2007, 22:19
Спроси в http://forum.vingrad.ru/forum/MS_Access-database.html, какие в Access есть словари. И просто сделай к ним select.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)