問題タブ [hsqldb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
15 に答える
102021 参照

java - 適切なドライバーが見つからない原因

作成した DAO を単体テスト (JUnit) しようとしています。フレームワークとしてSpringを使用しています.DAO(JdbcPackageDAO)はSimpleJdbcDaoSupportを拡張しています。テスト クラス (JdbcPackageDAOTest) は、AbstractTransactionalDataSourceSpringContextTests を拡張します。次のように configLocations をオーバーライドしました。

私の test-context.xml ファイルは次のように定義されています。

バックエンドとして HSQL を使用しています。スタンドアロン モードで実行しています。私が選んだ IDE は eclipse です。クラスを JUnit テストとして実行すると、エラーが発生します (以下)。なぜそれが起こっているのか、私には手がかりがありません。hsql.jar は、Eclipse によるビルド パスにあります。

0 投票する
1 に答える
9958 参照

logging - 100% インメモリ HSQL データベース

数時間ごとに最大 3 GB のデータに対してデータ マイニングを実行するサービスとして Java アプリケーションをセットアップしました。これをメモリ内で 100% 発生させたいと思います。理想的には、アプリケーションをすべてから分離したいと考えています。データベースを構築し、必要なマイニングを行い、完了したらデータベースを破棄するようにします。

ただし、HSQLDB では、「メモリ テーブルの作成....」コマンドを使用しても、すべてのステートメントのログが書き込まれ、次回のアプリケーション実行時にテーブルが再作成されます。

私は多くの挿入を行っているため、このファイルのサイズは急速に大きくなります。次回の実行時にデータベースを再構築することも気にしないので、ログは役に立ちません。

完了したらファイルを削除することもできますが、可能であれば、それほど多くをディスクに書き込む必要は避けたいと考えています。

この機能をオフにする方法はありますか?

前もって感謝します!

0 投票する
11 に答える
9182 参照

java - データベースへの配列の格納

hsqldb などのデータベースに大きな配列 (10000x100) を格納する最も効率的な方法は何ですか? Javaで書いている特定の数学プログラムに対してこれを行う必要があります。助けてください。配列全体が頻繁に取得および保存されます (個々の要素はそれほど多くありません)。また、配列に関するいくつかのメタデータを配列について保存する必要があります。

0 投票する
3 に答える
5264 参照

java - hsqldb での接続プーリング

速度を犠牲にすることなく、hsqldb で接続プールを実装する最良の方法は何ですか?

0 投票する
1 に答える
184 参照

java - SQL 削除カスケーディング ヘルプ (特定の質問)

HSQLデータベースに多対多の関係を持つ2つのテーブル(説明のために名前を変更/リファクタリング)があります。多対多の関係の片側から削除するときにすべてを消去したい (テーブルをクエリせずに、これはパフォーマンスが重要です)

ここに私の主なテーブルがあります:

ここに私の結合テーブルがあります:

ここに私の制約があります:

私は基本的にこれをやりたいです:「person_id = 0の人から削除」し、JOBエンティティが孤立する場合はPERSON、JOB_PERSON、およびJOBからすべてを削除します(多対多テーブルで参照されなくなります)

データベースにクエリを実行せずにこれは可能ですか? 削除すると、PERSON と JOB_PERSON からのみ削除されます。おそらくおわかりのように、私の SQL スキルは不足しています。

これが私が遊んでいるダミーデータです:

したがって、これらのステートメントの両方を入力すると、次のようになります。

3 つのテーブルすべてをすべて削除したいと考えています。可能?

0 投票する
2 に答える
770 参照

sql - SQL: 複雑な削除

基本的に、いくつかのテーブルを作成して遊んでみました。2 つのメイン テーブルと、多対多の結合テーブルがあります。これがDDLです:(私はHSQLDBを使用しています)

PERSON.PERSON_ID に基づいて、JOB からオーファンを削除する削除ステートメントを作成したいと考えています (特定のジョブの結合テーブルにエントリが 1 つしかない場合)。

疑似言語で:

X は person_id です。私はさまざまな方法を試しました。問題を引き起こしているのは「COUNT」の部分だと思います。私はSQL初心者なので、どんな助けでも大歓迎です。

0 投票する
1 に答える
820 参照

openoffice.org - HSQLDB への OpenOffice スプレッドシートのインポート

OpenOffice には HSQLDB が同梱されています。OO スプレッドシートの内容を組み込みデータベースに簡単にインポートできますか? セルの内容の書式設定を含めると、さらに便利です。すなわち。色、改行など

この質問には回答がありませんでしたので、報奨金を提供します。ソリューションにコードを提供してください。

提供されたリンクは機能し、コーディングは必要ありません。要約する:

  1. Open Office DB を作成して登録します。
    1.1 JDBC ドライバーを持っている任意の DB を登録できるようです。(つまり、MySql、Postgres)
  2. 行 1 に列見出しを作成します。
  3. データを選択してクリップボードにコピーします。
    3.1 すべての行を選択すると OO がクラッシュしたため、目的の行のみに選択を制限しました。
  4. データベースのテーブル (テーブル ペイン) ビューに移動します。
  5. 右クリックしてデータを貼り付けます。
  6. 表示されるウィザードの指示に従います。
0 投票する
2 に答える
1211 参照

java - 組み込み Java データベースを使用した Web からの CSV ファイルの処理

短いバージョン: データを長期間保持したくない場合、HSQLDB でプログラムによってデータベースを作成し、CSV データをロードするにはどうすればよいですか? 私のスキーマはファイルと正確に一致し、ファイルには適切な列名があります。

これは無人プロセスです。

詳細:

Web 経由でダウンロードした 3 つの CSV ファイルにいくつかの単純な SQL 手法を適用してから、いくつかの DTO を作成し、それを既存のコードで使用してさらに処理し、REST 経由で保存する必要があります。データベースをいじりたくないのですが、CSV ファイルは外部キーによってリンクされているため、メモリ内の組み込みデータベースを使用して作業を行い、すべてを破棄することを考えていました。

私は次のように動作するコマンドラインアプリを念頭に置いていました:

  1. HSQLDB に新しいデータベースを作成します。
  2. Apache HttpClient を使用して、3 つのスレッドで 3 つの HTTP GET を開始します。
  3. CSV を 3 つの HSQLDB MEMORY テーブルにインポートします。
  4. SQL を実行します。
  5. 結果を既存の DTO に解析します。
  6. 等...

項目 1 と 3 に役立つコードとユーティリティへのポインタを使用できます。また、検討すべき HSQLDB の代替手段はありますか?

0 投票する
3 に答える
3833 参照

sql - CASE WHENステートメントでHSQLDBで1000を超えるアイテムを取得するにはどうすればよいですか?

Hypersonic DB (HSQLDB) で次のクエリを実行しています。

"WHEN" 句の数が約 1000 を超えるとStackOverflowError、JDBC ドライバーによって Java がスローされますorg.hsqldb.jdbc.Util.sqlException()

ここに本当に奇妙な部分があります。CASEたとえば、100 個の WHEN 句の後にELSE ( CASE foo WHEN ... ) END. しかし、この書き直しでも、まったく同じ動作が得られます!

HSQLDBマニュアルには、1000の制限やその他の制限への言及はありません。ヘルプ!

0 投票する
7 に答える
17352 参照

postgresql - ビューでトリガーを実行しますか?

データベースのトリガーやビューにあまり詳しくありません。現在、PostgreSQL と HSQL を使用しています。データベースはそれほど重要ではありませんが。次のようなものを提供するデータベースがあるかどうか疑問に思っています。

次のような(例の)テーブルがあります。

次のようなビューを作成しました。

いくつかのエンティティを挿入します。

もちろん、呼び出したときに DUMMY_VIEW には VALUES(1,10) のみが含まれます

だから今私がやりたいことは、NUMBER > 5 を持つエンティティが挿入されるたびに呼び出される DUMMY_VIEW にトリガーを追加することです。

HSQL と PostgreSQL の両方で DUMMY_VIEW にトリガーを直接追加しようとしました。しかし、ビューにトリガーを追加することはできないと言われています。

これ(または機能的に同様のソリューション)は可能ですか?