zoukankan      html  css  js  c++  java
  • go mysql 初窥。查询

    首先要安装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

        

  • 相关阅读:
    HWOJ之纠结的优化
    java中的对象数组
    短路特性的运用
    归并排序
    两个有序数列的合并
    java中的注释规范
    堆排序
    堆的建立
    希尔排序
    直接插入排序
  • 原文地址:https://www.cnblogs.com/jackylee92/p/6175677.html
Copyright © 2011-2022 走看看