本文实例讲述了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
}
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语言程序设计有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。