在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
首先要安装Go-SQL-Driver/MySql,下载安装前要保证你的GOPATH对应的是你的项目目录 export GOPATH=/var/www/gogogo/test 然后下载安装 go install github.com/Go-SQL-Driver/MySQL go get github.com/Go-SQL-Driver/MySQL
main.go中 import 中加上 _"github.com/Go-SQL-Driver/MySQL" 和 "database/sql" 然后是链接数据库,msyql db, err := sql.Open("mysql","用户名:密码@/数据库?charset=utf8") 先来查询 我的数据库中有三个字段(id,name,pwd) 所以我定义了一个结构体类型 type User struct{ Id string Name string Pwd string } 定义一个结构体(定义?声明?有点分不清,反正就这么回事,) var u User stmtOut, err := db.Prepare("select * from user where id=?") //注册一条sql语句 注意了啊 !注意了啊!我在这里卡了很久啊~~草泥马 err = stmtOut.QueryRow(5).Scan(&u.Id,&u.Name,&u.Pwd) 首先 第一个5 是我传到sql里面的值 ,占位?这个的。 然后我sql 中用的* 也就是说我查出来的这条数据是有“3个字段”
这个意思就是 应该是三个,你丫的咋写了两个。傻逼啊~ 我本来结构体定义的只有两个属性的,后面用的时候也是录入两个属性的。但是查出来的数据是有三个属性,我就在结构体中加了个Id然后再Scan()中加了个id 这样就OK了 然后就是得到的这个err了 没有数据时就是nil 有数据是这U这个定义的结构体中能看到了 最后附上代码截图
晚安~~gogogo
|
请发表评论