問題タブ [sqlx]

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 に答える
355 参照

sql - SQL選択クエリでintペアのリストを展開する方法

次のパラメータのリストがあります。

ここで、リストを通過してパラメーターに一致するクエリを作成したいと思います: ( forの後の部分は、 PostgreSQL 9.4で記述したい疑似コードです)

Go でこのクエリを記述する方法 ( jmoiron.github.io/sqlxまたは standardを使用database/sql)?

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

mysql - Go / MySQL から送信されるすべての SQL ステートメントをログに記録するにはどうすればよいですか?

フレームワーク以外の Go スタックをsqlxで使用しており、MySQLを Web プロジェクトに使用しています。

デバッグのためにすべての送信 SQL ステートメントをログに記録したいと考えています。これを行うことは可能ですか?うまくいけば、次のような出力が得られることを期待しています (Rails プロジェクトからコピー):

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

oracle - 最後に挿入された ID を取得する (go + oracle)

go-oci8 ( https://github.com/mattn/go-oci8 ) ドライバーで sqlx ( https://github.com/jmoiron/sqlx ) を使用して、go アプリケーションから Oracle データベースに 2 つのレコードを挿入する必要があります。2 番目のレコードは、外部キーによって前のレコードを参照します。そのため、2 番目のレコードを挿入する前に、最初のレコードの主キーが必要です (最初のテーブルの挿入トリガーの前にシーケンスから割り当てられます)。

だから私は最後に挿入されたIDを取得するために実験しました:

LastInsertId が失敗しました:

出力:

次に、レコードを挿入して主キーを返すストアド関数を作成しようとしました。

しかし、その結果を得る方法を見つけることができませんでした。PostgreSQL スタイルの選択が失敗します:

また、OCI8 スタイルの変数バインディングは機能しません。

出力:

最後に挿入された ID を取得する方法、または Go の格納された関数から Oracle から値を取得する方法は?

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

database - Go言語、sqlx.StructScanで埋め込まれた構造体をスキャン

Go言語の学習を始めたばかりです。以下の簡単なプログラムを書きました。

ここでは、すべての本と関連する著者で構造体を埋めようとしています。

Book構造体には構造体が埋め込まれていAuthorます。

しかし、実行すると、次のエラーが発生します

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

Bookまた、構造体のフィールドタグをに変更しようとしました

クエリを次のように変更します

しかし、それは何の変化ももたらしません。

編集

いくつかの試行錯誤の後、ついに私はそれを機能させました。

作成したモデルを少し変更する必要があります。Book 構造体をから変更しました

現在、正常に動作しています。私がやっていた間違いは、Bautherフィールドを として追加したことAutherです。Sqlx はそれを理解できませんでした。しかし、Auther匿名の埋め込み構造体として追加すると、問題は解決しました。

しかし、それは別の問題をもたらします:)

ID フィールドは両方の構造体Bookと同様に存在します。Auther現在、ScanStruct はBook.IDすべての行で 0 を埋めています。

それを避けるために私にできることはありますか?