最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

go語言操作mysql數(shù)據(jù)庫

2023-07-27 14:46 作者:青陽小棧  | 我要投稿

在Go語言中使用MySQL,需要使用第三方包 github.com/go-sql-driver/mysql 來連接和操作MySQL數(shù)據(jù)庫。下面是一個詳細(xì)的示例:

首先,安裝MySQL驅(qū)動包: 在命令行中運行以下命令來安裝 github.com/go-sql-driver/mysql 包:

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

創(chuàng)建一個Go文件(例如 main.go),導(dǎo)入 database/sqlgithub.com/go-sql-driver/mysql 包,并連接到MySQL數(shù)據(jù)庫:

package main


import (

? ? "database/sql"

? ? "fmt"

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

)


func main() {

? ? // 連接數(shù)據(jù)庫

? ? db, err := sql.Open("mysql", "username:password@tcp(hostname:port)/dbname")

? ? if err != nil {

? ? ? ? panic(err.Error())

? ? }

? ? defer db.Close()


? ? // 測試連接是否成功

? ? err = db.Ping()

? ? if err != nil {

? ? ? ? panic(err.Error())

? ? }

? ? fmt.Println("Connected to MySQL database!")


? ? // 查詢數(shù)據(jù)庫

? ? rows, err := db.Query("SELECT id, name FROM users")

? ? if err != nil {

? ? ? ? panic(err.Error())

? ? }

? ? defer rows.Close()


? ? // 處理查詢結(jié)果

? ? for rows.Next() {

? ? ? ? var id int

? ? ? ? var name string

? ? ? ? err = rows.Scan(&id, &name)

? ? ? ? if err != nil {

? ? ? ? ? ? panic(err.Error())

? ? ? ? }

? ? ? ? fmt.Printf("ID: %d, Name: %s\n", id, name)

? ? }

}

需要將 username,password,hostname,portdbname 替換為你的MySQL數(shù)據(jù)庫的實際信息。

運行代碼后,它將連接到MySQL數(shù)據(jù)庫,并執(zhí)行一個簡單的查詢,輸出查詢結(jié)果中的每行記錄的ID和Name。


插入數(shù)據(jù)到數(shù)據(jù)庫:

package main


import (

? ? "database/sql"

? ? "fmt"

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

)


func main() {

? ? // 連接數(shù)據(jù)庫

? ? db, err := sql.Open("mysql", "username:password@tcp(hostname:port)/dbname")

? ? if err != nil {

? ? ? ? panic(err.Error())

? ? }

? ? defer db.Close()


? ? // 插入數(shù)據(jù)

? ? insertStmt, err := db.Prepare("INSERT INTO users (name, age) VALUES (?, ?)")

? ? if err != nil {

? ? ? ? panic(err.Error())

? ? }

? ? defer insertStmt.Close()


? ? // 替換成實際的數(shù)據(jù)

? ? name := "John"

? ? age := 30


? ? _, err = insertStmt.Exec(name, age)

? ? if err != nil {

? ? ? ? panic(err.Error())

? ? }


? ? fmt.Println("Data inserted successfully!")

}

更新數(shù)據(jù)庫中的數(shù)據(jù):

package main


import (

? ? "database/sql"

? ? "fmt"

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

)


func main() {

? ? // 連接數(shù)據(jù)庫

? ? db, err := sql.Open("mysql", "username:password@tcp(hostname:port)/dbname")

? ? if err != nil {

? ? ? ? panic(err.Error())

? ? }

? ? defer db.Close()


? ? // 更新數(shù)據(jù)

? ? updateStmt, err := db.Prepare("UPDATE users SET age = ? WHERE name = ?")

? ? if err != nil {

? ? ? ? panic(err.Error())

? ? }

? ? defer updateStmt.Close()


? ? // 替換成實際的數(shù)據(jù)

? ? name := "John"

? ? newAge := 35


? ? _, err = updateStmt.Exec(newAge, name)

? ? if err != nil {

? ? ? ? panic(err.Error())

? ? }


? ? fmt.Println("Data updated successfully!")

}



go語言操作mysql數(shù)據(jù)庫的評論 (共 條)

分享到微博請遵守國家法律
射洪县| 芒康县| 忻城县| 华阴市| 和田市| 凭祥市| 樟树市| 句容市| 鄂尔多斯市| 泗水县| 日土县| 扶绥县| 龙川县| 财经| 金昌市| 什邡市| 嘉义市| 手机| 山丹县| 东辽县| 页游| 济源市| 连江县| 聊城市| 会泽县| 富阳市| 苏州市| 怀集县| 扶余县| 鄂伦春自治旗| 东宁县| 罗山县| 泾源县| 明水县| 石家庄市| 大洼县| 东丽区| 武乡县| 彰化县| 吉隆县| 兴业县|