Java SQLite数据库-只允许一个会话?
我有一个用Java编写的服务器应用程序。此应用程序使用两个sqlite文件来处理数据。输入来自一个sqlite数据库,输出写入同一文件夹中的另一个数据库。 如果我在第二次启动应用程序时进程启动,但随后我收到以下错误消息: [SQLITE_BUSY]数据库文件已锁定(数据库已锁定) 日志中的最后一项如下所示: 信息:[sqlite]DB:连接已关闭 未能删除现有本机库文件:C:\Users\bae\AppData\Local\Temp\sqlite-3.7.2-sqlitejdbc.dll SQLite是否无法处理存储在不同文件夹中的不同数据库的应用程序 我有一个包含input.sqlite和output.sqlite的文件夹,它们由应用程序实例_A处理 我有包含input.sqlite和output.sqlite的文件夹B,它们由应用程序实例_B处理 这两个实例彼此独立运行 我找到了,找到了Java SQLite数据库-只允许一个会话?,java,database,sqlite,Java,Database,Sqlite,我有一个用Java编写的服务器应用程序。此应用程序使用两个sqlite文件来处理数据。输入来自一个sqlite数据库,输出写入同一文件夹中的另一个数据库。 如果我在第二次启动应用程序时进程启动,但随后我收到以下错误消息: [SQLITE_BUSY]数据库文件已锁定(数据库已锁定) 日志中的最后一项如下所示: 信息:[sqlite]DB:连接已关闭 未能删除现有本机库文件:C:\Users\bae\AppData\Local\Temp\sqlite-3.7.2-sqlitejdbc.dll SQL
但这对我帮助不大 你真的100%确定他们不使用同一个SQLite数据库吗?您是否使用外部工具对其进行了验证?您是否已尝试重命名某个应用程序文件夹中的input.sqlite和output.sqlite,并检查这是否会引发另一个错误(应引发异常,因为找不到数据库文件)?是的,我确定。我手动设置文件夹。我使用调试器来验证它。我看到了jdbc路径。所以我确信。唯一的问题是文件的名称是相同的。这个过程就是创建一个新的数据库。显示错误后,此错误即存在。