【发布时间】:2012-03-04 13:52:16
【问题描述】:
我编写了以下代码来连接到 OpenOffice db。
String db = "C:\\Documents and Settings\\hkonakanchi\\Desktop\\Test.odb";
Class.forName("org.hsqldb.jdbcDriver");
Connection con = DriverManager.getConnection("jdbc:hsqldb:file:" + db,"sa","");
Statement statement = con.createStatement();
ResultSet rs = statement.executeQuery("SELECT * FROM Emp");
while (rs.next()) {
System.out.print("ID: " + rs.getString("ID"));
System.out.print(" first name: " + rs.getString("firstname"));
System.out.println(" last name: " + rs.getString("lastname"));
}
con.close();
数据库包含emp表并保存了一些数据。
但我收到如下错误消息。
Exception in thread "main" java.sql.SQLException:
Table not found in statement [SELECT * FROM Emp]
at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.executeQuery(Unknown Source)
at Test.main(Test.java:16)
我该如何解决这个问题。谁能告诉我如何使用 hsqldb 驱动程序连接到 open office db?
【问题讨论】:
-
你能确认数据库中有表名“Emp”吗?
-
是的,已经创建了一个表,其中有一些数据
-
在我的桌面上添加了两个或三个文件,名称分别为 Test.odb、Test.odb.properties,
-
你可以试试这个...statement.executeQuery("select * from \"Emp\"") ..??
-
否 在表名上使用引号不起作用
标签: java jdbc hsqldb openoffice-base