我正在考慮在桌面應用程序中使用HSQLDB版本1.8.x來存儲本地數據。從我所看到的情況來看,數據庫以多個SQL語句存儲在磁盤上以創建表格,插入數據等。HSQLDB - 隱藏用戶的數據庫結構/內容
是否有一種簡單的方法可以隱藏用戶?我不一定需要它被完全加密等 - 我只想阻止臨時用戶只是打開文件並查看數據庫的結構。
我正在考慮在桌面應用程序中使用HSQLDB版本1.8.x來存儲本地數據。從我所看到的情況來看,數據庫以多個SQL語句存儲在磁盤上以創建表格,插入數據等。HSQLDB - 隱藏用戶的數據庫結構/內容
是否有一種簡單的方法可以隱藏用戶?我不一定需要它被完全加密等 - 我只想阻止臨時用戶只是打開文件並查看數據庫的結構。
我已經與現在的解決方法是調用:
db.update("SET SCRIPTFORMAT COMPRESSED;");
存儲.script文件以不可讀的形式出現,並且:
db.update("SET PASSWORD password;");
阻止更聰明的用戶使用他們自己的HSQLDB客戶端打開數據庫。
你可以一個jar文件內嵌入您的數據庫文件和使用符號連接到它們:
jdbc:hsqldb:res:<path in jar>
退房的HSQLDB指南的Advanced Topics部分更多這方面的信息。但是,我從來沒有嘗試過這樣是不是100%肯定它會工作...
不幸的是我不能執行以下命令
db.update(「SET scriptformat COMPRESSED」);
,並收到此錯誤
java.sql.SQLSyntaxErrorException: user lacks privilege or object not found: SCRIPTFORMAT
此錯誤使用此命令解決
db.update( 「文件集的腳本格式壓縮」);
我使用HSQLDB 2.3.3
命令在2.x版的'文件集的腳本格式COMPRESSED' – fredt 2016-12-02 17:20:36