第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

使用Go語(yǔ)言操作MySQL數(shù)據(jù)庫(kù)的思路與步驟

標(biāo)簽:
Go

最近在做注册登录服务时,学习用Go语言操作MySQL数据库实现用户数据的增删改查,现将个人学习心得总结如下,另外附有代码仓库地址,欢迎各位有兴趣的fork。

软件环境:Goland、Navicat for MySQL。

回到顶部

一、实现思路

1,我的总体设计思路是先写出连接数据库和关闭数据库的逻辑,再建立四个分支,根据用户的选择分别进入增删改查的操作;

?

12345func DBstart() {    db,_= sql.Open("mysql", "root:123456@tcp(127.0.0.1:3306)/dbtest?charset=utf8") //dbtest为我新建立的数据库名     fmt.Println("mysql start succcessed !")}

 

?

12345func DBclose(){    //关闭数据库    db.Close()    fmt.Println("database closed")}

  

2,增加的操作

输入对应的数据

?

1234567891011121314151617181920fmt.Println("请输入用户ID:")fmt.Scan(&Userid)fmt.Println("请输入名字:")fmt.Scan(&Username)fmt.Println("请输入部门:")fmt.Scan(&Departname)fmt.Println("请输入进部门时间")fmt.Scan(&Created)  //插入数据stmt,err := db.Prepare("INSERT userif SET userid=?,username=?,departname=?,created=?")CheckErr(err) res,err := stmt.Exec(Userid,Username,Departname,Created)CheckErr(err) id,err := res.LastInsertId() fmt.Println(id)

  

3,查询的操作

?

1234567891011    rows,err := db.Query("SELECT * FROM userif")    CheckErr(err)     for rows.Next(){        err = rows.Scan(&Id,&Userid,&Created,&Departname,&Username)        CheckErr(err)        fmt.Println(Userid)        fmt.Println(Username)        fmt.Println(Departname)        fmt.Println(Created)}

  

4,更新的操作

根据提示输入要更新的内容,然后转到对应的更新语句

?

123456789101112131415    fmt.Println("请输入要查询的用户ID:")    fmt.Scan(&Userid)    fmt.Println("请输入要更新的内容:a-名字;b-部门;c-进部门的时间:")    var s string    fmt.Scan(&s)    switch s {    case "a":        fmt.Println("请输入要更改用户ID为%d的名字",Userid)        fmt.Scan(&Username)        fmt.Println(Username)        fmt.Println(Userid)        stmt,err := db.Prepare("UPDATE userif SET username=? where userid=?")        CheckErr(err)                ......//以此类推}

  

5,删除的操作

?

123456789101112fmt.Println("请输入要删除的用户ID:")fmt.Scan(&Userid)stmt,err := db.Prepare("DELETE from userif where userid=?")CheckErr(err) res,err := stmt.Exec(Userid)CheckErr(err) affect,err := res.RowsAffected()CheckErr(err) fmt.Println(affect)

 

回到顶部

二、注意点

1,在查找操作中注意输入与输出对应的列名是否与MySQL数据中的一致,不然可能会造成如下错误

https://img1.sycdn.imooc.com//5b8c19ba00010e2608340618.jpg

 

 

回到顶部

三、参考资料

go-sql-driver

 

作者:Zoctopus·Lian

    

出处:http://www.cnblogs.com/OctoptusLian/


點(diǎn)擊查看更多內(nèi)容
1人點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消