Gin访问和使用数据库

243 阅读1分钟

安装

安装MySQL驱动程序

go get -u "github.com/go-sql-driver/mysql"

操作

package main

import (
    "database/sql"
    "fmt"
    "log"
    _ "github.com/go-sql-driver/mysql"
)

func main(){
    connStr := "root:root@tcp(127.0.0.1:3306)/ginsql"
    db,err:=sql.Open("mysql",connStr)
    if err!=nil{
        log.Fatal(err.Error())
        return
    }
    //创建表格
    // person:id,name,age

    _,err=db.Exec("create table person("+
    "id int auto_increment primary key,"+
    "name varchar(12) not null,"+
    "age int default 1);")
    if err!=nil{
        log.Fatal(err.Error())
    }else{
        fmt.Println("数据库表创建成功")
    }

    //插入数据到数据库
    _,err=db.Exec("insert into person(name,age)"+
        "value(?,?);","wowwuao",20)
    if err!=nil{
        log.Fatal(err.Error())
    }else{
        fmt.Println("数据插入成功")
    }

    //查询数据库
    rows,err:=db.Query("select id,name,age from person")
    if err!=nil{
        log.Fatal(err.Error())
    }
    for rows.Next(){
        person:=new(Person)
        err:=rows.Scan(&person.Id,&person.Name,&person.Age)
        if err!=nil{
            log.Fatal(err.Error())
        }
        fmt.Println(person.Id,person.Name,person.Age)
    }
}

type Person struct{
    Id int
    Name string
    Age int
}