HSQLDB: доступ к файлу .data запрещен - PullRequest
2 голосов
/ 28 февраля 2012

У меня есть база данных HSQLDB, которую я не смог открыть.Клиент SQL выдает следующее исключение:

java.sql.SQLException: error in script file line: 32 file input/output errorerror c:\db\mydb.data (Access is denied) opening file - file c:\db\mydb.data
at org.hsqldb.jdbc.Util.sqlException(Util.java:380)
at org.hsqldb.jdbc.Util.sqlException(Util.java:103)
at org.hsqldb.jdbc.JDBCConnection.<init>(JDBCConnection.java:3303)
at org.hsqldb.jdbc.JDBCDriver.getConnection(JDBCDriver.java:321)
at org.hsqldb.jdbc.JDBCDriver.connect(JDBCDriver.java:259)
at org.eclipse.datatools.connectivity.drivers.jdbc.JDBCConnection.createConnection(JDBCConnection.java:214)
at org.eclipse.datatools.connectivity.DriverConnectionBase.internalCreateConnection(DriverConnectionBase.java:105)
at org.eclipse.datatools.connectivity.DriverConnectionBase.open(DriverConnectionBase.java:54)
at org.eclipse.datatools.connectivity.drivers.jdbc.JDBCConnection.open(JDBCConnection.java:73)
at org.eclipse.datatools.enablement.hsqldb.connection.HSQLDBJDBCConnectionFactory.createConnection(HSQLDBJDBCConnectionFactory.java:35)
at org.eclipse.datatools.connectivity.internal.ConnectionFactoryProvider.createConnection(ConnectionFactoryProvider.java:83)
at org.eclipse.datatools.connectivity.internal.ConnectionProfile.createConnection(ConnectionProfile.java:359)
at org.eclipse.datatools.connectivity.ui.PingJob.createTestConnection(PingJob.java:76)
at org.eclipse.datatools.connectivity.ui.PingJob.run(PingJob.java:59)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: org.hsqldb.HsqlException: error in script file line: 32 file input/output errorerror     c:\db\mydb.data (Access is denied) opening file - file     c:\db\mydb.data
at org.hsqldb.error.Error.error(Error.java:131)
at org.hsqldb.scriptio.ScriptReaderText.readDDL(ScriptReaderText.java:151)
at org.hsqldb.scriptio.ScriptReaderBase.readAll(ScriptReaderBase.java:65)
at org.hsqldb.persist.Log.processScript(Log.java:759)
at org.hsqldb.persist.Log.open(Log.java:159)
at org.hsqldb.persist.Logger.openPersistence(Logger.java:288)
at org.hsqldb.Database.reopen(Database.java:218)
at org.hsqldb.Database.open(Database.java:185)
at org.hsqldb.DatabaseManager.getDatabase(DatabaseManager.java:240)
at org.hsqldb.DatabaseManager.newSession(DatabaseManager.java:157)
at org.hsqldb.jdbc.JDBCConnection.<init>(JDBCConnection.java:3281)
... 12 more

Строка 32 - это первая строка, в которой создается модель данных, она содержит оператор создания кэшированной таблицы .Что может вызвать это?Это излечимо? Необходимо восстановить данные.

1 Ответ

3 голосов
/ 29 февраля 2012

«Доступ запрещен» обычно означает, что ваш файл доступен только для чтения или уже открыт другим процессом (например, средством проверки на вирусы).Иногда сама Windows блокирует файл, который можно разблокировать только после перезагрузки компьютера.

...