2011-11-08 38 views
0

我正在使用hsqldb-2.2.5。我已經嘗試將shutdown=truewrite_delay=false添加到連接字符串。沒有成功。Hsqldb不寫入或保存數據到磁盤

連接字符串'jdbc:hsqldb:file:c:\\temp\\rvec;shutdown=true', 'sa', ''

代碼執行:

DriverManager.registerDriver @rawDataFactory.getDriver 
@con = DriverManager.getConnection dburl, user, pwd 
@con.setAutoCommit false 

statement = @con.prepareStatement "INSERT INTO NODES(NAME, DESCR, DATA_HOLDER, SUBSYSTEMS) values(?, ?, ?, ?)" 
statement.setString 1, ntf.name.to_s 
statement.setString 2, ntf.descr 
statement.setBytes 3, write_dump(ntf.data_holder) 
statement.setString 4, write_array(ntf.subsystems) 
statement.execute 
statement.close 

沒有數據出現在日誌文件或磁盤上的其他數據庫文件。 如何讓它發生?

回答

1

我只是想知道@con.setAutoCommit false也許你需要一個提交調用。

另一個想法:嘗試發送一個SHUTDOWN命令到DBMS。

+0

是的,沒有提交沒有數據被寫入。 – fredt

+0

這是對的。謝謝! – Vyacheslav

+0

SHUTDOWN後,我可以再次啓動DB如果是的話怎麼樣? –