問題タブ [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.
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を挿入するのを手伝ってくれる人はいますか?
prepared-statement - jooq クエリからの PreparedStatement の作成
現在、JOOQ の可能性を探っていますが、慎重に開始し、SQL ビルダーとしてのみ JOOQ を使用したいと考えています。CustomTable
型の安全性を確保するために、データベース スキーマをから派生したクラスとして定義しました。これは次のようなコードにつながります
wheresometable
は、テーブル インスタンスの 1 つを保持する変数です。
私が現在行っていることはquery
、
しかし、ステートメントのパラメーターが増えるとすぐに、最初のパラメーターに関して JOOQ の実装に複雑な依存関係が生じ始めsetObject
ます。
を使用することを考えましたquery.getBindValues()
が、これはステートメントにバインドするプレーンな Java オブジェクトのみを返します。注文が の位置注文と一致すると仮定する必要がsetObject
あり、さらにgetSQLType()
. したがって、これも良い方法ではありません。
query.getPreparedStatement(connection)
次に、すべてのパラメーターが適切に入力された状態で、提供された接続からステートメントを作成するようなものを見つけたいと思っていましたが、これは存在しないようです。
私が行方不明になってPreparedStatement
いるJOOQから抜け出すためのきちんとした方法はありますか?Query
c# - Reflection を使用して Dapper SQL Builder クエリ パラメータを作成する
私は、Dapper を DAL レイヤーとして使用するプロジェクトに取り組んでおり、インライン クエリをまだ使用しているためです。クエリを作成するために、dapper sqlBuilder テンプレートを使用しています。
以下は、メソッド コードの 1 つです。
上記のコードでは、データベース内の少量のフィールドに適しています。しかし、テーブルに多くのフィールドがある場合、たとえば 25 列の場合、そのビルダーを構築するためだけに多くの作業が必要になります。
リフレクションを使用して関数にラップすることを考えました。私は最初に次のようなもので試します:
問題は、Dapper がビルダー クラスで必要とする動的パラメーターで動作させる方法が見つからないことです。
すべての提案と助けをいただければ幸いです。
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 に変更するだけの問題だと思いますが、確認したかったのです。
java - JAVA JOOQ を使用して SQL クエリを段階的に作成する方法
私のJavaコードでは、長いクエリを作成したいのですが、JOOQを見つけてクエリを作成し、生成クラスなしで使用していますが、次のようにクエリを段階的に作成する方法が見つかりません:
これを作る方法は?
dapper - Dapper の SqlBuilder の使い方
SqlBuilder クラスを使用するために従うことができるドキュメントや例が見つかりません。
SQL クエリを動的に生成する必要があり、このクラスを見つけました。これが最良の選択肢でしょうか?
dapper - Dapper.SqlBuilder と OrWhere を使用して動的 SQL クエリを作成するにはどうすればよいですか
複数の検索語に対して動的な SQL クエリを作成しようとしています。ビルダーの一般的な使用方法は理解していますが、@term を毎回異なるものにする必要があるため、ループで何をすべきかわかりません (と思います)。クエリだけでなく、匿名型でも一致します。
クエリ文字列で string.Format を使用できますが、匿名型で一致させる方法がわかりませんか?
現在のフォームでは、用語「abc」「def」「ghi」に対して作成されるクエリは次のとおりです。