SQLite异常:从其他连接对象读取时出现“没有这样的表”

时间:2018-11-16 14:15:07

标签: java sqlite jdbctemplate

我正在通过Java使用SQLite,我有一个用例,它是从一个连接写入数据,然后从另一个连接读回数据。我有两个单独的org.springframework.jdbc.core.JdbcTemplate实例,一个实例写数据,另一个实例读回数据。

写入数据可以很好地工作,但是当我尝试使用另一个JdbcTemplate对象将其读回时,它将失败,并显示以下错误:

java.lang.RuntimeException: Error while creating sql session factory connection 
... 
Caused by: org.sqlite.SQLiteException: [SQLITE_ERROR] SQL error or missing database (no such table: TEMP_TABLE_NAME)    at 
org.sqlite.core.DB.newSQLException(DB.java:941)     at 
org.sqlite.core.DB.newSQLException(DB.java:953)     at 
org.sqlite.core.DB.throwex(DB.java:918)     at 
org.sqlite.core.NativeDB.prepare_utf8(Native Method)    at 
org.sqlite.core.NativeDB.prepare(NativeDB.java:134)     at 
org.sqlite.core.DB.prepare(DB.java:257)     at 
org.sqlite.jdbc3.JDBC3Statement.executeQuery(JDBC3Statement.java:73)

我什至尝试设置PRAGMA journal_mode=WAL;,但仍然失败,但有相同的异常。另外,如果我使用相同的JdbcTemplate来读写数据,程序也可以正常工作。

是否可以通过一个连接对象写入SQLite并从另一个连接对象读取?

FWIW,我正在使用org.xerial:sqlite-jdbc:3.25.2

0 个答案:

没有答案