1

ローカルデータを保存するために、デスクトップアプリでHSQLDBバージョン1.8.xを使用することを検討しています。私が見ることができることから、データベースは、テーブルを作成したり、データを挿入したりするためのいくつかのSQLステートメントとしてディスクに保存されます。

これをユーザーから隠す簡単な方法はありますか?必ずしも完全に暗号化する必要はありません。たとえば、カジュアルなユーザーがファイルを開いてデータベースの構造を確認するのを防ぐためです。

4

3 に答える 3

1

私が今行った解決策は、呼び出すことです:

db.update("SET SCRIPTFORMAT COMPRESSED;");

.script ファイルを人間が判読できない形式で保存し、次のことを行います。

db.update("SET PASSWORD password;");

より知識のあるユーザーが独自の HSQLDB クライアントを使用して DB を開くのを防ぐため。

于 2009-08-24T16:44:05.700 に答える
1

データベース ファイルを jar ファイル内に埋め込み、次の表記法を使用してそれらに接続できます。

jdbc:hsqldb:res:<path in jar>

詳細については、HSQLDB ガイドの高度なトピックのセクションをご覧ください。ただし、私は試したことがないので、100%うまくいくとは限りません...

于 2009-08-24T14:45:00.617 に答える
0

残念ながら、以下のコマンド
db.update("SET scriptformat COMPRESSED");を実行できませんでした。

そして、このエラーが発生していました

java.sql.SQLSyntaxErrorException: user lacks privilege or object not found: SCRIPTFORMAT

このエラーは、このコマンド
db.update("SET FILES SCRIPT FORMAT COMPRESSED");で解決されました。

HSQLDB 2.3.3 を使用しています

于 2015-11-17T14:07:07.957 に答える