問題タブ [h2]

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 投票する
3 に答える
8864 参照

sql - これまでにvarcharをキャストする

私は小さなプロジェクトにH2データベースを使用していますが、すべてのフィールドはvarcharです

クエリの場合、文字列を日付に変換する必要があるため、試してみました

しかし、エラーがあります

コード:

エラーコード90009、SQL状態90009:日付定数 "2011-02-21-15.22.07"を解析できません、原因: "java.lang.NumberFormatException:入力文字列の場合:" "21-15.22.07" "";

何か案が?

ありがとう

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

android - h2またはsybaseデータベースを使用してAndroidでormliteを使用することは可能ですか?

sqlite、h2、sybaseデータベースを使用してAndroidにdatabase-testappを実装しました。sqliteの場合、ormliteインターフェイスも実装しました。今、私は、Androidでormliteをh2またはsybaseでも使用できるかどうかに興味があります。

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

macos - Mac OSXでH21.1.117のパフォーマンスが低下するのはなぜですか?

400k行のテーブルで同じクエリ(いくつかの内部結合を使用したSELECT)を実行すると、Mac OSXではLinuxやWindows7よりも約30倍長くかかります。確かに、ハードウェア構成は異なりますが、違いはありません。そのような大きな違いを保証するのに十分です。Mac OSX10.6を実行しているいくつかのコンピュータでパフォーマンスの問題を再現することができました。奇妙なことに、長いクエリ実行の途中でH2を強制終了し、次回の起動時にH2にデータベースを修復させた後、期待どおりのパフォーマンスが得られました。しかし、これを一貫して再現することはできませんでした。

Mac OS Xで気付いたのは、クエリを送信してから数秒後に、CPUとディスクの両方の使用量がほぼゼロになり、クエリ結果を返す直前に戻るだけであるということでした。
テストコンピュータには、次のバージョンのJavaがインストールされています。

  • Mac OS X:Java(TM)SEランタイム環境(ビルド1.6.0_24-b07-334-10M3326)Java HotSpot(TM)64ビットサーバーVM(ビルド19.1-b02-334、混合モード)
  • Linux:Java(TM)SEランタイム環境(ビルド1.6.0_20-b02)、Java HotSpot(TM)64ビットサーバーVM(ビルド16.3-b01、混合モード))
  • Windows:Java(TM)SEランタイム環境(ビルド1.6.0_24-b07)Java HotSpot(TM)64ビットサーバーVM(ビルド19.1-b02、混合モード)

すべてのコンピューターはH21.1.117を実行していました。このバージョンはかなり古いことは知っていますが、今はそれを使い続けたいと思いますが、この明らかにプラットフォーム固有のパフォーマンスの問題を解決する必要があります。バグレポートをグーグルで検索しましたが、関連するものは見つかりませんでした。

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

git - git リポジトリとしての h2database

H2大好き!また、私はgitが好きで使用しています。svn リポジトリを git リポジトリに変換できなかったので、ソースをダウンロードしてgithubにプッシュしました。

しかし、( githubを使用して) git リポジトリで h2 ソースを公開すると非常に便利です。そして、「フォーク」を削除し、あなたの github リポジトリをフォークします。ソースを読んで、いくつかのコミットを試みたいと思います。

ありがとう!

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

database-replication - H2データベースからビルドスクリプトを生成する簡単な方法はありますか?

テーブルやインデックスなどを使用してH2データベースを作成することを想像してみましょう...SQLスクリプトを抽出して、このデータベースの構造を別のH2データベースに再作成する簡単な方法はありますか?

テーブルやインデックスなどの内容については言及していません。データベースを他の場所に複製するためのデータベースの一般的な構造に関心があります。ありがとう。

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

java - H2 データベースのクラスパスにある CSV ファイルをロードします

テスト目的で、SQL スクリプトと CSV ファイルを使用していくつかのテーブルを作成して入力したいと考えています。

そこで、次のような SQL スクリプトを作成しました。

ファイルはfoo.csv存在し、 にありますsrc/test/resources

このスクリプトを Eclipse で実行すると (src/test/resourcesはソース ディレクトリとして定義されているため、クラスパスに含まれています)、次のエラーが発生します。

私は何を間違えましたか?classpath:プロトコルを正しく使用して CSV ファイルをロードするには?

ファイルの完全なパス(のように... CSVREAD('C:\my-project\src\test\resources\foo.csv');)を入力すると、機能します。しかし、それが私がやりたい理由ではありません:)

このプロトコルを使用してファイルをロードしたかったので、H2 の最新バージョン ( 1.3.153 )を使用していることに注意してください。classpath:

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

ruby - JRubyなしでRubyからH2データベースに接続する方法はありますか?

私はruby1.8.7とWATiRを使用してWebアプリケーションをテストしていますが、H2データベースにできるだけ簡単に接続したいのですが、JDBCアクセスに関する情報しか見つかりません。JRubyを使用してRubyからこれを行う方法がある場合は問題ありませんが、主にWATiRコードが記述されているため、Rubyを使用する必要があります。

考えられるすべての解決策が検討されますが、データベースの知識が限られており、Ruby / WATiRからデータベースにアクセス(読み取りおよび書き込み)して、Webフロントエンドに表示されるものと照合する必要があるため、簡単な方法を探しています。

編集:私は無知の一部を取り除きました。JDBCがDBアクセス用のJava APIであることがわかったので、Ruby/WATiRスクリプトがアクセスできるようにH2データベースに接続する方法を探しています。

背景:私はDBIとSequelの宝石の経験があり、Railsをインストールしています(主にActiveRecordで遊び始めることができます)が、この問題を解決するために新しいことを学びたいと思っています。

私は優れたJavaコーダーではないと仮定しましょう。また、JRubyの使用についてもこれまで検討したことがないため、JRubyの動作については完全には理解していません。

解決策 私は最終的に、主に以下のトーマス・ミュラーの答えのおかげで、2人が互いに話し合うようになりました。PostgreSQL ODBCドライバーをインストールし、Sequelを動作させ、ODBCを使用して接続しました。SequelのPGアダプターを使用してH2PGサーバーに接続すると、まだ作業中の構文エラーが発生します。私はまだDBIに接続しようとはしていませんが、必要に応じて構文をより細かく制御できる可能性があるため、接続します。activerecord-jdbc-adapterとSequel(私のrubyパスの厄介なpg.rbファイル)の間の競合を解決するのを手伝ってくれたJeremy Evansと、Sequelを管理してくれたJeremyEvansにも感謝します。これは回答としてリストされていないので、私と同じ状況の人々にフィードバックを提供しながら、回答した人にクレジットを与えることができます。

pg(ruby-pgではない)、sequel、dbi、dbd-odbc(さらに、手動のファイル修正、詳細については私に尋ねることができます)、hoe、およびUNinstalledactiverecord-jdbc-adapterをインストールしました。

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

h2 - nullポインタ例外をスローするH2データベース

私はH2データベースを初めて使用しますが、formatという名前の関数を実行しているときに特定の問題が発生しました。

sumValueがnull値を取得する可能性があります。

クエリを実行すると、次の例外がスローされます

ドキュメントを調べたところ、引数はラッパークラスである必要があることがわかりました。そのため、doubleに変更しました。

誰かが実際の問題がどこにあるのかを理解するのを手伝ってくれませんか?

ありがとうございます

よろしくファニクマール

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

java - H2データベースでXmlTypeを管理する方法

単体テストにはH2データベースを使用しています。私のアプリケーションでは、FooXml次のように定義されたと呼ばれるエンティティオブジェクトがあります。

したがって、データベースからXMLコンテンツを読み書きするためにmy.app.common.HibernateXMLType、を実装する独自のXMLTypeを作成しましたorg.hibernate.usertype.UserType。メソッドnullSafeSetnullSafeGetはそこで定義されています。

ここで、テストにH2インメモリデータベースを使用したいと思います。一部のテストでは、このFooXmlクラスを使用しています。H2はOracleをサポートしていないためXmlType、をカスタマイズする必要がありますmy.app.common.HibernateXMLType。たとえば、その部分を追加しました。

このアプローチにはいくつかの懸念があります。

  • アプリケーションの本番コードに(つまり、テストコードではなく)テスト目的に直接リンクされているコードを追加します。
  • このクラスはにorg.h2.jdbc.JdbcConnection依存しているため、WARパッケージにh2データベースの依存関係を追加する必要があります。

質問

  • それは私の問題を解決するための最良のアプローチですか、それともそれを行うためのより良い方法がありますか?
  • テスト目的で(my.app.common.HibernateXMLTypeForH2の代わりに)別のタイプを使用するようにHibernateに指示する方法はありますか?my.app.common.HibernateXMLType

ps:H2データベースにテーブルを作成するためのスクリプトは次のとおりです。

技術的な詳細:H2データベースv1.3.153、JUnit 4.8.1、Java 1.6、Hibernate 3.2.2、Oracle10gはテストなしの環境で使用されます。

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

jetty - Jettyの再起動時にH2Webサーバーが失敗する

次のSpringBeanを使用して起動するH2Webサーバーを使用した(新しい)ビルドセットアップがあります。

これは他の3人の開発者(全員がMacまたはLinuxを実行している)にとっては問題なく機能しますが、コードの変更を見つけた後にJettyが再起動するたびに、Windowsラップトップで問題が発生します。

理論は、Jettyが再起動を通知したとき、および/またはH2がポートを再利用しないときに、ポートが適切に解放されないというものです。

今私の質問:これを修正するにはどうすればよいですか?よくある問題だと思いましたが、何も見つかりませんでした。