問題タブ [sqlbuilder]

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

java - @InsertProvider を使用して postgresql Array (integer[] ) タイプの列に Java ArrayList を挿入する方法

次のように定義されたマッパーメソッドがあります

対応する SQLBuilder メソッドは次のように定義されます。

次のようにマッパーメソッドを呼び出すたびに

次のエラーが発生しました。

エラーには、ActivityMapper.insertIntoActivityComment-Inline が関係している可能性があります パラメータの設定中にエラーが発生しました\n### SQL: insert into activityComment (commenttype, commenttext, commentdate, commentinguser_id, attachments, activity_id, fileids) VALUES (?, ?, now(), ?, ?, ?, ? )\n### 原因: org.postgresql.util.PSQLException: java.util.ArrayList のインスタンスに使用する SQL タイプを推測できません。使用するタイプを指定するには、setObject() を明示的な Types 値とともに使用します。"

私のActivityCommentオブジェクトの構造は

PostgresqlデータベースにArrayListを挿入するのを手伝ってくれる人はいますか?

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

prepared-statement - jooq クエリからの PreparedStatement の作成

現在、JOOQ の可能性を探っていますが、慎重に開始し、SQL ビルダーとしてのみ JOOQ を使用したいと考えています。CustomTable型の安全性を確保するために、データベース スキーマをから派生したクラスとして定義しました。これは次のようなコードにつながります

wheresometableは、テーブル インスタンスの 1 つを保持する変数です。

私が現在行っていることはquery

しかし、ステートメントのパラメーターが増えるとすぐに、最初のパラメーターに関して JOOQ の実装に複雑な依存関係が生じ始めsetObjectます。

を使用することを考えましたquery.getBindValues()が、これはステートメントにバインドするプレーンな Java オブジェクトのみを返します。注文が の位置注文と一致すると仮定する必要がsetObjectあり、さらにgetSQLType(). したがって、これも良い方法ではありません。

query.getPreparedStatement(connection)次に、すべてのパラメーターが適切に入力された状態で、提供された接続からステートメントを作成するようなものを見つけたいと思っていましたが、これは存在しないようです。

私が行方不明になってPreparedStatementいるJOOQから抜け出すためのきちんとした方法はありますか?Query

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

c# - Reflection を使用して Dapper SQL Builder クエリ パラメータを作成する

私は、Dapper を DAL レイヤーとして使用するプロジェクトに取り組んでおり、インライン クエリをまだ使用しているためです。クエリを作成するために、dapper sqlBuilder テンプレートを使用しています。

以下は、メソッド コードの 1 つです。

上記のコードでは、データベース内の少量のフィールドに適しています。しかし、テーブルに多くのフィールドがある場合、たとえば 25 列の場合、そのビルダーを構築するためだけに多くの作業が必要になります。

リフレクションを使用して関数にラップすることを考えました。私は最初に次のようなもので試します:

問題は、Dapper がビルダー クラスで必要とする動的パラメーターで動作させる方法が見つからないことです。

すべての提案と助けをいただければ幸いです。

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

dapper - OR の代わりに AND を使用する Dapper SqlBuilder OrWhere

Dapper 用に SqlBuilder の Where メソッドと OrWhere メソッドを使用しようとしましたが、期待どおりに動作しません。

この質問の編集された部分は、基本的に私が遭遇したものです。返事がないのでこちらで質問させていただきます。

期待したselect * from table WHERE a = @a OR b = @b

しかし、私は得ましたselect * from table WHERE a = @a AND b = @b

SqlBuilder を使用して where 句に OR を追加する方法はありますか?

SqlBuilder クラスの以下を AND ではなく OR に変更するだけの問題だと思いますが、確認したかったのです。

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

java - JAVA JOOQ を使用して SQL クエリを段階的に作成する方法

私のJavaコードでは、長いクエリを作成したいのですが、JOOQを見つけてクエリを作成し、生成クラスなしで使用していますが、次のようにクエリを段階的に作成する方法が見つかりません:

これを作る方法は?

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

dapper - Dapper の SqlBuilder の使い方

SqlBuilder クラスを使用するために従うことができるドキュメントや例が見つかりません。

SQL クエリを動的に生成する必要があり、このクラスを見つけました。これが最良の選択肢でしょうか?

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

dapper - Dapper.SqlBuilder と OrWhere を使用して動的 SQL クエリを作成するにはどうすればよいですか

複数の検索語に対して動的な SQL クエリを作成しようとしています。ビルダーの一般的な使用方法は理解していますが、@term を毎回異なるものにする必要があるため、ループで何をすべきかわかりません (と思います)。クエリだけでなく、匿名型でも一致します。

クエリ文字列で string.Format を使用できますが、匿名型で一致させる方法がわかりませんか?

現在のフォームでは、用語「abc」「def」「ghi」に対して作成されるクエリは次のとおりです。