HSQLDB 用ant [Table Not Found In Statement] 管理一个新的独立数据库 [英] HSQLDB Manage a new standalone database with ant [Table Not Found In Statement]

查看:32
本文介绍了HSQLDB 用ant [Table Not Found In Statement] 管理一个新的独立数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我打算使用 HSQLDB,我正在尝试使用 ant 的示例.

I'm planning to use HSQLDB, I'm trying an example with ant.

构建文件:

<target name="create.tables">
  <echo>Creating tables using: ${db.driver} ${db.url}</echo>
  <sql driver="${db.driver}"
      url="${db.url}"
      userid="${db.username}"
      password="${db.password}"
      onerror="continue"
      src="hsqldb/create_cars.sql">
      <classpath refid="hsqldb.database" />
  </sql>
</target>

<target name="load.data">
  <echo>Load Data Using: ${db.driver} ${db.url}</echo>
  <sql  driver="${db.driver}"
      url="${db.url}"
      userid="${db.username}"
      password="${db.password}"
      onerror="continue"
      src="hsqldb/load_data.sql">
      <classpath refid="hsqldb.database" />
  </sql>
</target>

属性:

db.driver=org.hsqldb.jdbcDriver
db.url=jdbc:hsqldb:file:hsqldb/dbcars
db.username=sa
db.password=

create_tables.sql:

create_tables.sql:

CREATE TABLE cars (
     id INTEGER NOT NULL PRIMARY KEY,
     description VARCHAR(255)
) ;

load_data.sql:

load_data.sql:

INSERT INTO cars (id, description) VALUES (1, 'first car') ;
INSERT INTO cars (id, description) VALUES (2, 'second car') ;

create.tables 目标有效,但 load.data 出现此错误:

the create.tables target works, but load.data give this error:

[sql] java.sql.SQLException: Table not found in statement [ SELECT * FROM cars]

推荐答案

通常这是由于与数据库的连接时间很短造成的.表定义未持久化,以后无法找到.查看您可以使用的连接属性列表:

Usually this is caused by a short duration connection to the database. The table definition is not persisted and cannot be found later. See the list of connection properties you can use:

http://www.hsqldb.org/doc/2.0/指南/dbproperties-chapt.html

然后试试这个:

db.driver=org.hsqldb.jdbcDriver
db.url=jdbc:hsqldb:file:hsqldb/dbcars;shutdown=true
db.username=sa
db.password=

如果它不起作用,试试这个:

If it doesn't work, try this:

db.driver=org.hsqldb.jdbcDriver
db.url=jdbc:hsqldb:file:hsqldb/dbcars;hsqldb.write_delay=false
db.username=sa
db.password=

这篇关于HSQLDB 用ant [Table Not Found In Statement] 管理一个新的独立数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆