首頁 >後端開發 >Golang >使用 Go 查詢資料庫

使用 Go 查詢資料庫

王林
王林原創
2024-08-16 07:06:42310瀏覽

Query a database Using Go

第 1 步:安裝 MySQL 驅動程式
首先,您需要安裝 Go 的 MySQL 驅動程式。一種流行的方法是 go-sql-driver/mysql。您可以使用以下方式安裝它:

go get -u github.com/go-sql-driver/mysql

第 2 步:寫 Go 程式碼
以下是如何連接到 MySQL 資料庫並查詢資料的範例:

package main

import (
    "database/sql"
    "fmt"
    "log"

    _ "github.com/go-sql-driver/mysql"
)

func main() {
    // Open the database connection
    db, err := sql.Open("mysql", "username:password@tcp(127.0.0.1:3306)/dbname")
    if err != nil {
        log.Fatal(err)
    }
    defer db.Close()

    // Ping the database to check if the connection is alive
    if err := db.Ping(); err != nil {
        log.Fatal(err)
    }

    // Define the query
    query := "SELECT id, name FROM users WHERE active = ?"
    active := true

    // Execute the query
    rows, err := db.Query(query, active)
    if err != nil {
        log.Fatal(err)
    }
    defer rows.Close()

    // Iterate through the result set
    for rows.Next() {
        var id int
        var name string
        if err := rows.Scan(&id, &name); err != nil {
            log.Fatal(err)
        }
        fmt.Printf("ID: %d, Name: %s\n", id, name)
    }

    // Check for errors from iterating over rows
    if err := rows.Err(); err != nil {
        log.Fatal(err)
    }
}

說明:
匯入必要的套件:匯入用於資料庫互動的database/sql包和MySQL驅動程式(github.com/go-sql-driver/mysql)。

開啟資料庫連線:您可以使用 sql.Open 開啟與資料庫的連線。連線字串格式為 username:password@tcp(host:port)/dbname.

Ping 資料庫:Ping 資料庫以確保建立連線是一個很好的做法。

執行查詢:您使用 db.Query 執行查詢。 Query 方法傳回一個 *sql.Rows 對象,您可以迭代該物件來取得結果集。

迭代結果:您使用循環迭代行並將每一行掃描到變數中。

處理錯誤:您應該處理在查詢執行或迭代期間發生的任何錯誤。

第 3 步:運行程式碼
確保將使用者名稱、密碼、127.0.0.1:3306 和 dbname 替換為您實際的 MySQL 憑證和資料庫詳細資訊。

運行你的Go程序,它應該會輸出你的查詢結果。

透過相應地變更驅動程式和連接字串,此範例可以適用於其他資料庫。

以上是使用 Go 查詢資料庫的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn