Ответ 1
Обычно это исключение возникает, когда база данных повреждена. Попробуйте создать резервную копию базы данных. См. здесь для другого обсуждения этой темы.
У нас есть настольное приложение с локальной базой данных HSQLDB. Некоторые клиенты сообщили, что их приложение перестает работать. Когда я пытаюсь открыть его с помощью DbVisualizer, я вижу это на консоли отладки:
12:45:32 [DEBUG pool-2-thread-1 D.?] RootConnection: jdbcDriver.connect("jdbc:hsqldb:C:\test\database.db", {user=**, password=})
java.sql.SQLException: error in script file line: 56 out of memory
at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.<init>(Unknown Source)
at org.hsqldb.jdbcDriver.getConnection(Unknown Source)
at org.hsqldb.jdbcDriver.connect(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.onseven.dbvis.d.B.D.?(Z:1548)
at com.onseven.dbvis.d.B.F$A.call(Z:278)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Кто-нибудь знает что-то сделать, чтобы открыть это и проанализировать, в чем проблема?
Обычно это исключение возникает, когда база данных повреждена. Попробуйте создать резервную копию базы данных. См. здесь для другого обсуждения этой темы.
Вы можете получить эту ошибку при открытии базы данных HSQLDB с использованием несовместимой версии драйвера. Например, я получаю его при использовании версии 2.2.8
, чтобы открыть базу данных HSQLDB, сохраненную с версией 1.8.1.3
. Я использую SQuirrel для просмотра этих баз данных и должен настроить несколько разных драйверов для поддержки каждой версии. Я полагаю, что DB Visualizer имеет аналогичную возможность.
Убедитесь, что если база данных очень велика, вы выделяете больше памяти в кучу. см. Явное пространство памяти Java из памяти