2011-11-08 2 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

셧다운 이후에, 예인 경우 DB를 다시 시작할 수 있습니까? –

관련 문제