問題タブ [jdbc-postgres]

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

java - 登録・初期化コマンド実行時に ClassNotFundExxseption エラーが発生する

私はJavaプロジェクトJavaProject4を持っています。フォルダー lib に、ファイル postgresql-42.2.2.jre7.jar (postgres ドライバー) を追加しました。次に、次のコマンドを実行します。

コマンドはエラーで終了します。

タイプ: ClassNotFoundException 詳細メッセージ: "org.postgresql.Driver"

質問:このエラーを修正するにはどうすればよいですか?

PS私は Java と Netbeans の開発環境に少し精通しています。 ここに画像の説明を入力

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

java - list パラメータを使用して HQL クエリを実行可能な SQL クエリに変換する

すべてのデータをロードせずに渡された HQL に基づいて合計レコード数を取得するための util 関数を作成しています。HQL で渡されたものは、多くの選択、結合、場所条件、グループ化、および並べ替えでかなり複雑になる場合があります。そのために、クエリをSELECT COUNT(*) FROM (<ORIGINAL_QUERY>) x. Hibernate では FROM 要素でのサブクエリが許可されていないため、これは HQL では不可能であることがわかりました。今、いくつかの名前付きパラメーター (いくつかは単純なパラメーターであり、いくつかはリストである可能性があります) を持つ可能性があるこのランダムな HQL クエリを、パラメーター値をインライン化せずに実行可能な SQL ステートメントに変換しようとしています。これは単純なパラメーターでは機能するようですが、リスト パラメーターでは機能しません。

hqlString と namedParameterMap は外部のどこかから取得されます。

HQL を SQL に変換するコード (および ParameterTranslations:

SQLQuery を作成し、パラメータを設定してクエリを実行するコード:

このクエリは期待どおりに機能します。

このクエリは機能しません:

例外:

org.hibernate.exception.SQLGrammarException: org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42) で org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:106) で ResultSet を抽出できませんでしたorg.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:111) で org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:97) で org.hibernate.engine.jdbc org.hibernate.loader.Loader.getResultSet(Loader.java:2313) の .internal.ResultSetReturnImpl.extract(ResultSetReturnImpl.java:79) org.hibernate.loader.Loader.executeQueryStatement(Loader.java:2096) の org. hibernate.loader.Loader.executeQueryStatement(Loader.java:2072) at org.hibernate.loader.Loader.doQuery(Loader.java:941) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:352) org.hibernate.loader.Loader.doList(Loader.java:2813) org.hibernate.loader.Loader.doList(Loader.java:2796) org .hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2625) at org.hibernate.loader.Loader.list(Loader.java:2620) at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:322) ) org.hibernate.internal.SessionImpl.listCustomQuery(SessionImpl.java:1996) で org.hibernate.internal.AbstractSessionImpl.list(AbstractSessionImpl.java:322) で org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java: 125) org.hibernate.internal.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:966) で HQLQueryUtils.getCount(HQLQueryUtils.java:350) で352) org.hibernate.loader.Loader.doList(Loader.java:2813) で org.hibernate.loader.Loader.doList(Loader.java:2796) で org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java) :2625) org.hibernate.loader.Loader.list(Loader.java:2620) で org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:322) で org.hibernate.internal.SessionImpl.listCustomQuery( SessionImpl.java:1996) org.hibernate.internal.AbstractSessionImpl.list(AbstractSessionImpl.java:322) org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:125) org.hibernate.internal.AbstractQueryImpl.uniqueResult (AbstractQueryImpl.java:966) HQLQueryUtils.getCount (HQLQueryUtils.java:350) で352) org.hibernate.loader.Loader.doList(Loader.java:2813) で org.hibernate.loader.Loader.doList(Loader.java:2796) で org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java) :2625) org.hibernate.loader.Loader.list(Loader.java:2620) で org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:322) で org.hibernate.internal.SessionImpl.listCustomQuery( SessionImpl.java:1996) org.hibernate.internal.AbstractSessionImpl.list(AbstractSessionImpl.java:322) org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:125) org.hibernate.internal.AbstractQueryImpl.uniqueResult (AbstractQueryImpl.java:966) HQLQueryUtils.getCount (HQLQueryUtils.java:350) でlistIgnoreQueryCache(Loader.java:2625) org.hibernate.loader.Loader.list(Loader.java:2620) org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:322) org.hibernate.internal .SessionImpl.listCustomQuery(SessionImpl.java:1996) at org.hibernate.internal.AbstractSessionImpl.list(AbstractSessionImpl.java:322) at org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:125) at org.hibernate. internal.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:966) at HQLQueryUtils.getCount(HQLQueryUtils.java:350)listIgnoreQueryCache(Loader.java:2625) org.hibernate.loader.Loader.list(Loader.java:2620) org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:322) org.hibernate.internal .SessionImpl.listCustomQuery(SessionImpl.java:1996) at org.hibernate.internal.AbstractSessionImpl.list(AbstractSessionImpl.java:322) at org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:125) at org.hibernate. internal.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:966) at HQLQueryUtils.getCount(HQLQueryUtils.java:350)322) org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:125) で org.hibernate.internal.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:966) で HQLQueryUtils.getCount(HQLQueryUtils.java:350) で322) org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:125) で org.hibernate.internal.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:966) で HQLQueryUtils.getCount(HQLQueryUtils.java:350) で

原因: org.postgresql.util.PSQLException: エラー: 演算子が存在しません: integer = bytea ヒント: 指定された名前と引数の型に一致する演算子はありません。明示的な型キャストを追加する必要がある場合があります。位置: 301 at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2433) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2178) at org.postgresql.core.v3. QueryExecutorImpl.execute(QueryExecutorImpl.java:306) org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:441) org.postgresql.jdbc.PgStatement.execute(PgStatement.java:365) org.postgresql.jdbc .PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:155) org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:118) org.hibernate.engine.jdbc.

環境:

  • Java 8
  • 休止状態 5.1.8
  • Postgres-JDBC 42.2.2
  • PostgreSQL サーバー 10.5
0 投票する
1 に答える
696 参照

scala - Scala Slick: クエリでパラメータを取得できません

私はこれに何時間も費やしました。Scala で Slick を使用して PostgreSQL でかなり複雑なクエリを作成しようとしていますが、Slick は私のパラメーターを考慮しません。次のような簡単なことを試してみると:

出力は次のようになります。

代わりに、リテラル挿入を試します。

出力は次のようになります。

Slick は、次のように、クエリ内の唯一の引数であっても、リテラル引数がどこに配置されていても、常にコンマを追加します。

今、私が望んでいるのは、Postgres 内での計算と関数呼び出しを使用して、より複雑なクエリを作成することです。しかし、Slick が私の変数を一切使用させてくれないので、どこにもたどり着けません。

Slickはそれらをすべて無視するようで、引数をコンマで置き換えるかGetResultコンマで囲み、すべてのクエリを無効にします。サニタイズを提供しないため、あまり良くないことを付け加えておきます。非同期なので Slick を使い続けたいと思っていますが、ここからどこへ行くべきかわかりません。StatementParameters?#$

によると、これらは私のバージョン番号ですbuild.sbt

私は何を間違っていますか?