PostgreSQL データベースへの構造体の直接挿入
はじめに
シナリオでは、ここで構造体には多数のフィールドがあるため、データを 1 つずつ手動で挿入するのは面倒な場合があります。この記事では、「sqlx」ライブラリを使用して構造体全体を PostgreSQL データベースに直接挿入する方法について説明します。
SQLx を使用して構造体を挿入する
「sqlx」ライブラリデータベースと対話するための便利な方法を提供します。 「NamedExec」関数をサポートしているため、簡単に構造体を引数として渡してデータを挿入できます。
データベース タグの定義
「NamedExec」を使用するには、構造体の各フィールドに「db」タグを定義する必要があります。これらのタグは、データベース テーブル内の対応する列名を指定します。
例:
<code class="go">type ApplyLeave1 struct { LeaveId int `db:"leaveid"` EmpId string `db:"empid"` SupervisorEmpId string `db:"supervisorid"` }</code>
構造体の挿入
タグを定義したら、「NamedExec」を使用してデータを挿入できます。
<code class="go">db, err := sqlx.Connect("postgres", "user=foo dbname=bar sslmode=disable") if err != nil { log.Fatalln(err) } query := `INSERT INTO TABLENAME(leaveid, empid, supervisorid) VALUES(:leaveid, :empid, :supervisorid)` var leave1 ApplyLeave1 _, err = db.NamedExec(query, leave1) if err != nil { log.Fatalln(err) }</code>
「NamedExec」を使用すると、構造体全体を一度にデータベースに簡単に挿入できるため、手動による挿入の繰り返し。
以上がSQLx を使用して構造体を PostgreSQL データベースに直接挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。