• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Go丨语言对MySQL数据库的增、删、改、查操作

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1、建立数据库名为: go_test_db

2、建表名为:userinfo

字段: 

uid int 

username varchar

language varchar

created varchar

3、对数据库操作

package main
 
import (
    "database/sql"
    "fmt"
    
    _ "github.com/Go-SQL-Driver/MySQL"
)
 
func main() {
    db, err := sql.Open("mysql", "go:golang@/go_test_db?charset=utf8")
    //在这里解析一下sql.Open传的参数解析 :
  //db,err := sql.Open("mysql","登录名:登录密码@/数据库名?charset=utf8")
    checkErr(err)
 
    //插入数据
    stmt, err := db.Prepare("INSERT userinfo SET username=?,language =?,created=?")
    checkErr(err)
    res, err := stmt.Exec("haojieli", "Java", "2016-07-12")
    checkErr(err)
    id, err := res.LastInsertId()
    checkErr(err)
    fmt.Println("获取添加成功的 value=", id)<br>
    //更新数据
    stmt, err = db.Prepare("update userinfo set username=? where uid=?")
    checkErr(err)
    res, err = stmt.Exec("update later", id)
    checkErr(err)
    affect, err := res.RowsAffected()
    checkErr(err)
    fmt.Println("更新当前添加的数据,为1就是更新成功. value =", affect)
 
    //查询数据
    rows, err := db.Query("SELECT * FROM userinfo")//本例子是查询userinfo表所有的数据 ,分页改变Mysql语句就可以了 ,分页语句例子:select * from userinfo limit 0,5(limit解析查看另外一篇文章)
    checkErr(err)
    fmt.Println("查询所有的userinfo-------------------- start")
    for rows.Next() {
        var uid int
        var username string
        var department string
        var created string
        err = rows.Scan(&uid, &username, &language, &created)
        checkErr(err)
        fmt.Print(uid, "|")
        fmt.Print(username, "|")
        fmt.Print(language, "|")
        fmt.Println(created)
 
    }
    fmt.Println("查询所有的userinfo-------------------- end")<br>
    //删除数据
    stmt, err = db.Prepare("delete from userinfo where uid=?")
    checkErr(err)
    res, err = stmt.Exec(id - 1)
    checkErr(err)
    fmt.Println("删除添加id的上一条数据,为1就是成功删除. value =", affect)
    db.Close()
}<br><br>//检查是否有错
func checkErr(err error) {
    if err != nil {
        panic(err)//panic是获取到真正意义上的错误
    }
}

  

博文到此结束,感谢您的观看,希望对各位读者有所帮助,如果有什么意见以及建议请在评论留言......

 

======祝各位读者生活愉快======


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C/Go语言Goto发布时间:2022-07-10
下一篇:
Go标准容器之List发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap