在 Go 中,您可以使用 pq 套件將行從 STDIN 匯入到 PostgreSQL。以下是逐步解決方案:
<code class="go">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) }</code>
<code class="go">txn, err := db.Begin() if err != nil { log.Fatalf("begin: %v", err) }</code>
使用pq.CopyIn() 建立準備好的語句。
<code class="go">stmt, err := txn.Prepare(pq.CopyIn("test_table", "column1", "column2", ...)) if err != nil { log.Fatalf("prepare: %v", err) }</code>
迭代資料並執行 stmt .Exec() 每行。
<code class="go">for _, row := range rows { _, err = stmt.Exec(row.Column1, row.Column2, ...) if err != nil { log.Fatalf("exec: %v", err) } }</code>
<code class="go">_, err = stmt.Exec() if err != nil { log.Fatalf("exec: %v", err) }</code>
<code class="go">stmt.Close() err = txn.Commit() if err != nil { log.Fatalf("commit: %v", err) }</code>
此程式碼將有效地將行從STDIN 匯入到您的PostgreSQL 表。
以上是如何使用 Go 的 pq 套件將資料從 STDIN 匯入到 PostgreSQL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!