配列フィールドを使用してpostgres行をgolang構造体に変換します

ShailyGarg:

私はpostgres db tableを持っています

CREATE TABLE foo (
name varchar(50),
types varchar(50)[],
role varchar[10]
);

とそれに対応する構造体:

type Foo struct {
Name string `db:"name"`
Types []string `db:"types"`
Role string `db:"role"`
}

構造体にdb行をフェッチしたい。今私はこれを使用してこれを行うことができます:

var foo Foo
query := `SELECT name, types, roles FROM foo LIMIT 1`
err = dbConn.QueryRow(query).Scan(&foo.Name,  pq.Array(&foo.Types), &foo.Role)

しかし、私は直接マッピングを使用して同じことを達成したいと思います。何かのようなもの:

var foo []Foo
query := `SELECT name, types, roles FROM foo`
dbWrapper.err = dbConn.Select(&foo, query)

上記のスニペットはTypes、pq配列であるためエラーが発生します構造体の一部としてpq配列を直接マップすることは可能ですか?

ShailyGarg:

おかげhttps://stackoverflow.com/a/44385791/10138004は、私はSQLXのため、このPQドライバ(解決することができる午前https://godoc.org/github.com/lib/pq置き換えることで)自分自身を[]stringpq.StringArray

したがって、更新された構造体は次のようになります。

type Foo struct {
Name string `db:"name"`
Types pq.StringArray `db:"types"` //this is what changed.
Role string `db:"role"`
}

ダイレクトマッピングが魅力的に機能している

var foo []Foo
query := `SELECT name, types, roles FROM foo`
dbWrapper.err = dbConn.Select(&foo, query)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

構造体配列からフィールドを抽出して、別の構造体配列に配置します

Golang:構造体のフィールドをループして変更し、構造体を返しますか?

Golangはreflectを使用して構造体のフィールドを1つずつ変更します

構造体フィールドを持つ構造体の配列を再割り当てします

構造体を使用してJSONを配列に変換する

変数を使用してgolang構造体フィールドにアクセスする

構造体からフィールドを削除し、構造体を変換します

Matlabの構造体配列のすべてのフィールドを空にします

Golang、バイト配列を[]バイト型のフィールドを持つ構造体に変換

Golang:フィールド名を文字列として持つ構造体を取得します

Golangは他の構造体フィールドに任意の構造体を格納します

Golangはreflectを使用して構造体フィールドを設定します

Matlabの構造体配列をセル配列に変換します

Golangで文字列を時間構造体に変換します

RxSwift配列内の構造体タイプの変数フィールドを観察します

ジェネリックフィールドを使用して匿名構造体の配列を初期化する方法

構造体配列を構造体のセルに、またはその逆に変換します。

構造体配列のフィールドを.txtファイルに変換する方法

memcpyを使用して構造体をchar配列に変換する

構造体配列から特定のフィールドのすべての値を抽出します

Matlabは構造体を文字列のセル配列に変換します

gdb.valueを使用してGDBの構造体フィールドを変更します

char配列を構造体に変換する際の問題。構造体のchar配列変数がオーバーフローします

構造体をループし、golangの配列にアクセスします

その配列へのポインタを使用して、構造体の配列に含まれる構造体のフィールドにアクセスするにはどうすればよいですか?[C ++]

インターフェイス{}をGolangの構造体に変換します

特定のフィールドをキーとして使用して構造体をマップに変換する方法は?

scipy.io savematを使用して複数のPython辞書をMATLAB構造体配列に変換します

CGOを使用して構造体のGoネスト配列をCに変換しますか?

TOP 一覧

  1. 1

    STSでループプロセス「クラスパス通知の送信」のループを停止する方法

  2. 2

    PictureBoxで画像のブレンドを無効にする

  3. 3

    HTTPヘッダー 'SOAPAction'の値はサーバーによって認識されませんでした

  4. 4

    レスポンシブウェブサイトの一番下にスティッキーなナビゲーションバーを作成するのに問題がある

  5. 5

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  6. 6

    Ansibleで複数行のシェルスクリプトを実行する方法

  7. 7

    Python / SciPyのピーク検出アルゴリズム

  8. 8

    ZScalerと証明書の問題により、Dockerを使用できません

  9. 9

    tkinterウィンドウを閉じてもPythonプログラムが終了しない

  10. 10

    tf.nn_conv2dとtf.nn.depthwise_conv2dの違い

  11. 11

    Crashlytics:コンパイラー生成とはどういう意味ですか?

  12. 12

    BLOBストレージからデータを読み取り、Azure関数アプリを使用してデータにアクセスする方法

  13. 13

    テキストフィールドの値に基づいて UIslider を移動します

  14. 14

    amCharts 4で積み上げ棒グラフの輪郭を描く方法は?

  15. 15

    MLでのデータ前処理の背後にある直感

  16. 16

    Postmanを使用してファイル付きの(ネストされた)jsonオブジェクトを送信する

  17. 17

    「埋め込みブラウザのOAuthログイン」を有効にしてコールバックURLを指定した後でも、Facebookのコールバックエラーが発生する

  18. 18

    Officeアドインを使用してOutlookの連絡先のリストにプログラムでアクセスすることは可能ですか?

  19. 19

    モジュラーJava Webアプリケーションを作成する最良の方法は何ですか

  20. 20

    Chromeウェブアプリのウェブビューの高さの問題

  21. 21

    ezdxf pythonパッケージを使用して既存のdxfファイルを変更するにはどうすればよいですか?

ホットタグ

アーカイブ