Go では、pq パッケージを使用して STDIN から PostgreSQL に行をインポートできます。段階的な解決策は次のとおりです:
import (
"database/sql"
"github.com/lib/pq"
)
db, err := sql.Open("postgres", "dbname=mydb user=myuser password=mypassword")
if err != nil {
log.Fatalf("open: %v", err)
}
txn, err := db.Begin()
if err != nil {
log.Fatalf("begin: %v", err)
}
pq.CopyIn() を使用して、準備されたステートメントを作成します。
stmt, err := txn.Prepare(pq.CopyIn("test_table", "column1", "column2", ...))
if err != nil {
log.Fatalf("prepare: %v", err)
}
データを反復処理し、行ごとに stmt.Exec() を実行します。
for _, row := range rows {
_, err = stmt.Exec(row.Column1, row.Column2, ...)
if err != nil {
log.Fatalf("exec: %v", err)
}
}
_, err = stmt.Exec()
if err != nil {
log.Fatalf("exec: %v", err)
}
stmt.Close()
err = txn.Commit()
if err != nil {
log.Fatalf("commit: %v", err)
}
このコードは、STDIN から PostgreSQL テーブルに行を効率的にインポートします。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3