首頁 > 後端開發 > Golang > 如何在 Golang 中插入尚不存在的記錄?

如何在 Golang 中插入尚不存在的記錄?

Linda Hamilton
發布: 2024-12-27 05:36:13
原創
1016 人瀏覽過

How to Insert Records in Golang Only if They Don't Already Exist?

Golang 中不存在的記錄插入

在 Go 中,您可以使用 database/sql 套件與資料庫建立連線並執行 SQL 查詢。要檢查記錄是否存在並在不存在時插入它,可以按照以下步驟操作:

打開資料庫連接並確保其正常工作:

db, err := sql.Open("mysql", "user:password@tcp(hostname:port)/database")
if err != nil {
    // Handle error gracefully
}
err = db.Ping()
if err != nil {
    // Handle error gracefully
}
登入後複製

準備 SQL查詢以檢查記錄是否存在:

stmt, err := db.Prepare(`SELECT COUNT(*) FROM table_name WHERE column_name = ?`)
if err != nil {
    // Handle error gracefully
}
登入後複製

使用特定參數執行查詢(例如,「construction」作為列value):

var count int
err = stmt.QueryRow("construction").Scan(&count)
if err != nil {
    // Handle error gracefully
}
登入後複製

檢查count 的值:

  • 如果count 大於0,則該記錄存在。
  • 如果 count 為 0,則記錄不存在。

如果記錄不存在(計數為0),則準備SQL 查詢插入:

stmt, err := db.Prepare(`INSERT INTO table_name (column_name) VALUES (?)`)
if err != nil {
    // Handle error gracefully
}
登入後複製

執行插入查詢:

_, err = stmt.Exec("construction")
if err != nil {
    // Handle error gracefully
}
登入後複製

執行以下步驟,您可以使用Go 的資料庫有效檢查記錄是否存在並在缺失時插入新記錄/ sql 包。

以上是如何在 Golang 中插入尚不存在的記錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板