Я использую ucanaccess для управления базой данных SQL в Java.Я сделал Первоначальную настройку, используя ответ на вопрос - Настройка ucanaccess
После настройки я успешно могу Создать таблицы, Вставить в таблицы однако я не могу перечислить существующие таблицы.
Я прилагаю код, который я использую -
public class Driver {
public static void main(String[] args) {
try {
Connection myconnection = DriverManager.getConnection("jdbc:ucanaccess:///usr/local/var/mysql/library/database.accdb");
Statement stmt = myconnection.createStatement();
stmt.executeQuery("create table books ( BarCode VARCHAR(255) NOT NULL, title VARCHAR(255) NOT NULL, author VARCHAR(255), PRIMARY kEY (BarCode) );");
stmt.executeQuery("Insert INTO books VALUES(\"123\", \"Monk\", \"Robin\")");
ResultSet res = myconnection.getMetaData().getTables(null, null, "books", new String[] {"TABLE"});
while (res.next()) {
System.out.println(
" "+res.getString("TABLE_CAT")
+ ", "+res.getString("TABLE_SCHEM")
+ ", "+res.getString("TABLE_NAME")
+ ", "+res.getString("TABLE_TYPE")
+ ", "+res.getString("REMARKS"));
}
} catch (Exception e) {
e.printStackTrace();
}
}
Часть, в которой перечислены всеимена таблиц используются из ответа - Список всех таблиц
Любая помощь приветствуется.
Редактировать: Я пытался проверить, если "books" существовало в базе данных, поэтому я дал "books" в tableNamePattern в поиске.После указания @Andreas я изменил его.