服务器之家

服务器之家 > 正文

Go语言使用MySql的方法

时间:2020-04-14 11:14     来源/作者:不吃皮蛋

本文实例讲述了Go语言中使用MySql的方法。分享给大家供大家参考。具体如下:

此代码需要先安装mysql的go语言驱动。

首先安装mysql的go语言驱动:

复制代码 代码如下:
go get github.com/ziutek/mymysql/godrv


示例代码如下:

复制代码 代码如下:
package users
import (
    "database/sql"
    "fmt"
    _ "github.com/ziutek/mymysql/godrv"
)
 
const (
    DB_NAME = "mysql_database_name"
    DB_USER = "mysql_user"
    DB_PASS = "mysql_password"
)
 
type User struct {
    Id      int    `json:"id"`
    Name string `json:"name"`
    Alias   string `json:"alias"`
}
 
func OpenDB() *sql.DB {
    db, err := sql.Open("mymysql", fmt.Sprintf("%s/%s/%s", DB_NAME, DB_USER, DB_PASS))
    if err != nil {
        panic(err)
    }
    return db
}
 
func UserById(id int) User {
    db := OpenDB()
    defer db.Close()
    row := db.QueryRow("SELECT `id`, `name`,`alias` FROM `users` WHERE id=?", id)
    user := new(User)
    row.Scan(&user.Id, &user.Name, &user.Alias)
    return user
}

 

希望本文所述对大家的Go语言程序设计有所帮助。

标签:

相关文章

热门资讯

沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
返回顶部