lastinsertid mysql_mysql - Go语言中文网 - Golang中文社区

golang连接mysql

安装:

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

构建连接, 格式是:”用户名:密码@tcp(IP:端口)/数据库?charset=utf8”

打开数据库,前者是驱动名,所以要导入:_ “github.com/go-sql-driver/mysql”

初始化

func init(){

db,err:=sql.Open("mysql","root:1111@tcp(127.0.0.1:3306)/test?charset=utf8")

if err!=nil{

fmt.Println("dbiniterr:",err)

}

}

插入数据 insert

插入前需要提前登录mysql创建表对应的字段。

typeDBworkerstruct{

Db*sql.DB

}

//插入数据测试

func(dbw*DBWorker)insertData(){

//stmt,_:=dbw.Db.Prepare(`INSERTINTOuser1(name,age)VALUES(?,?)`)

//deferstmt.Close()

stmt,err:=dbw.Db.Prepare("INSERTINTO user1 (`user`,`age`) VALUES (?,?)")

if err!=nil{

fmt.Println("Preparefail",err)

return

}

ret,err:=stmt.Exec(1,23)

if err!=nil{

fmt.Printf("insertdataerror:%v\n",err)

return

}

if LastInsertId,err:=ret.LastInsertId();err==nil{

fmt.Printf("LastInsertId%d\n",LastInsertId)

}

if RowsAffected,err:=ret.RowsAffected();err==nil{

fmt.Printf("RowsAffected%d\n",RowsAffected)

}

}

查询数据测试

func (dbw *DBWorker) queryData() {

stmt, _ := dbw.Db.Prepare("SELECT * FROM user WHERE age = ?")

defer stmt.Close()

user := userTB{}

//查询user表中age等于23的数据

rows, err := stmt.Query(23)

defer rows.Close()

if err != nil {

fmt.Printf("query data error : %v\n", err)

return;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值