Golang-使用mysql
程序员文章站
2022-03-20 16:18:03
一、安装mysql driver驱动 二、安装完毕之后,就可以通过go语言操作mysql了 三、对mysql的增删查改用Query,Exec方法就ok了,具体其他的方法参考go语言的官方文档 ......
一、安装mysql-driver驱动
go get github.com/go-sql-driver/mysql
二、安装完毕之后,就可以通过go语言操作mysql了
const ( _selectuser = "select name,age from user where id = ?" _updateuser = "update user set name = ? where name = ?" _insertuser = "insert user (name,age) values (?,?)" _deleteuser = "delete user where id = ?" ) func main () { var ( err error ) // 得到一个db对象 // open方法第二个参数: 用户名:密码@协议(ip:端口)/数据库 db,err := sql.open("mysql","root:root@tcp(127.0.0.1:3306)/day0731") if err != nil { fmt.println(err) return } defer db.close() // 这里我们拿到了db这个对象,就可以对day0731这个mysql数据库进行操作了 // 查询操作 // query方法,返回值具体类型自己看 var ( name string age int ) resultrows,err := db.query(_selectuser,1) // 这里的name,age必须和sql语句顺序一致,也不能多传,也不能少传 err = resultrows.scan(&name,&age) if err != nil { fmt.println(err) retrun } fmt.println(name) fmt.println(age) // queryrow方法,查询的效果和上面一致 err = db.queryrow(_selectuser,1).scan(&name,&age) if err != nil { fmt.println(err) return } fmt.println(name) fmt.println(age) // 插入、更新、删除操作 // exec方法,执行一段sql语句 result,err := db.exec(_updateuser,"朱春雨","朱宇") if err != nil { fmt.println(err) return } // result这个对象,他有两个方法,rowsaffected(),lastinsertid(), // 分别返回影响的行数,还有就是最后插入的id // 我们这里执行的是更新语句,就看这个方法就好了rowsaffected rowcount,err := result.rowsaffected() if err != nil { fmt.println(err) return } if rowcount == 0 { fmt.println("更新操作失败") return } fmt.println("更新操作成功!") }
三、对mysql的增删查改用query,exec方法就ok了,具体其他的方法参考go语言的官方文档
上一篇: JavaScript中变量声明效率问题
下一篇: 数据库优化 - SQL优化