golang go_mysql

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang go_mysql相关的知识,希望对你有一定的参考价值。

package db

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

var Db *sql.DB

func init() {
    var err error
    Db, err = sql.Open("mysql", "root:root@tcp(127.0.0.1:3306)/gwp?charset=utf8&parseTime=true&loc=Asia%2FShanghai")
    //Db, err = sql.Open("mysql", "root:root@tcp(127.0.0.1:3306)/gwp?charset=utf8&loc=Asia%2FShanghai")
    if err != nil {
        panic(err)
    }
}
func InsertData(sqlStr string, params ...interface{}) {
    stmt, _ := Db.Prepare(sqlStr)
    defer stmt.Close()
    result, err := stmt.Exec(params...)
    if err != nil {
        panic(err)
    }
    fmt.Println(result.LastInsertId())
    fmt.Println(result.RowsAffected())
}
func Query(sqlStr string, params ...interface{}) (*sql.Rows, error) {
    rows, err := Db.Query(sqlStr, params...)
    if err != nil {
        return nil, err
    }
    return rows, nil
}
func QueryOne(sqlStr string, params ...interface{}) *sql.Row {
    row := Db.QueryRow(sqlStr, params...)
    return row
}
func UpdateData(sqlStr string, params ...interface{}) {
    stmt, _ := Db.Prepare(sqlStr)
    defer stmt.Close()
    result, err := stmt.Exec(params...)
    if err != nil {
        panic(err)
    }
    fmt.Println(result.LastInsertId())
    fmt.Println(result.RowsAffected())
}
func DeleteData(sqlStr string, params ...interface{}) {
    stmt, _ := Db.Prepare(sqlStr)
    defer stmt.Close()
    result, err := stmt.Exec(params...)
    if err != nil {
        panic(err)
    }
    fmt.Println(result.LastInsertId())
    fmt.Println(result.RowsAffected())
}

Golang 学习之路

Golang基础

Golang基础之包概念
Golang基础之数据类型
Golang基础之流程控制
Golang基础之数组
Golang基础之切片
Golang基础之map
Golang基础之函数
Golang基础之指针
Golang基础之结构体
Golang基础之接口

Golang Web开发

Golang 其它

算法

以上是关于golang go_mysql的主要内容,如果未能解决你的问题,请参考以下文章

Golang 入门

Golang入门到项目实战 第一个golang应用

golang编译androidso无法加载

golang如何打印内存内容

Golang入门到项目实战 golang匿名函数

json [Golang] golang #golang #snippets中有用的片段