go语言学习第三篇——数据库的连接

//数据库连接主函数,需要导入包github.com/go-sql-driver/mysql,database/sql

package main

 

import (

 

    _"github.com/go-sql-driver/mysql"   

    "database/sql"

    "db/check"

"db/myselect"

    "db/insert"

)

 

func main(){

//打开本地数据库

    db,err:=sql.Open("mysql","root:liukun@/test")

    check.CheckErr(err)

insert.Insert(db,"lk","技术部","2019-9-9")

myselect.Select(db)

 

    

// //更新数据

//  stmt,err=db.Prepare("update userinfo set username=? where uid=?")

//  checkErr(err)

 

//  res,err=stmt.Exec("astaxieupdate",id)

//  checkErr(err)

 

//  affect,err:=res.RowsAffected()

//  checkErr(err)

 

//  fmt.Println(affect)

    

//  //删除数据

//  stmt,err=db.Prepare("delete from userinfo where uid=?")

//  checkErr(err)

 

//  res,err=stmt.Exec(id)

//  checkErr(err)

 

//  affect,err=res.RowsAffected()

//  checkErr(err)

 

//  fmt.Println(affect)

//  db.Close()

}

//检测错误的函数

package check

 

func CheckErr(err error){

    if err!=nil{

        panic(err)

    }

}

//查询函数

package myselect

 

import(

    "db/check"

    "database/sql"

    "fmt"

)

func Select(db *sql.DB) {

    rows,err:=db.Query("select * from userinfo")

    check.CheckErr(err)

 

    for rows.Next(){

        var uid int

        var username string

        var departname string

        var created string

        err =rows.Scan(&uid,&username,&departname,&created)

        check.CheckErr(err)

        fmt.Println(uid)

        fmt.Println(username)

fmt.Println(departname)

fmt.Println(created)

    }

}

//插入函数

package insert

 

import(

    _"github.com/go-sql-driver/mysql"

    "fmt"

    "database/sql"

    "db/check"

)

 

func Insert(db *sql.DB,i,j,z string){

    //插入数据

    stmt,err:=db.Prepare("insert userinfo set username=?,departname=?,created=?")

    check.CheckErr(err)

 

    res,err:=stmt.Exec(i,j,z)

    check.CheckErr(err)

 

   id,err:=res.LastInsertId()

   check.CheckErr(err)

 

   fmt.Println(id)

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值