mysql

package
v0.0.0-...-710c528 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 24, 2019 License: MIT Imports: 12 Imported by: 0

Documentation

Overview

package gosql mysql工具包..引用"github.com/go-sql-driver/mysql"

Index

Constants

View Source
const (
	DuplicateErrorCode = 1062 //字段重复
	PRIMARY            = "primary"
)

Variables

View Source
var SQLEmptyChange = err1.NewError(101, "数据无变化")

Functions

func Connect

func Connect(host, username, password, db string, other ...string) (db.SQL, error)

链接mysql数据库,其中other参数代表链接字符串附加的配置信息 其中other="loc=Local&multiStatements=true"

func ExecResultHasError

func ExecResultHasError(execresult db.ExecResult, reportZeroChange bool, param ...map[string]string) err1.Error

执行结果是否有错误

func GetDuplicateField

func GetDuplicateField(errmsg string) string

获取重复字段

func InitializeDB

func InitializeDB(host, username, password, name string, log ...logs.Logger)

设置数据库基础连接

func SelectSQL

func SelectSQL(obj interface{}, tablename ...string) *bytes.Buffer

SelectSQL 获取对象

func SetSQL

func SetSQL(obj interface{}) (string, []interface{})

SetSQL 转换成插入语句

func Update

func Update(table string, obj interface{}) (string, []interface{}, err1.Error)

Update 更新数据

func WhereIN

func WhereIN(field string, values string, args []interface{}, bs *bytes.Buffer, char ...string) (*bytes.Buffer, []interface{})

拼接 where in 条件,field要查询的字段名称以及拼接条件,value表示in中的字段值多个值按char[默认逗号]分割,args表示参数集合 返回拼接结果和参数集合,eg: whereIN("AND material_code", "xxx,xxxxx", args, bs)

Types

type Conn

type Conn struct {
	// contains filtered or unexported fields
}

数据库连接

func GetDBConnect

func GetDBConnect() *Conn

获取数据库连接

func InitializeConnect

func InitializeConnect(host, username, password, dbname string, log ...logs.Logger) *Conn

初始化数据库

func (*Conn) Close

func (d *Conn) Close()

Close 关闭数据库

func (*Conn) Count

func (d *Conn) Count(sql string, args ...interface{}) (int64, err1.Error)

Count SQL语句条数统计 param sql string SQL param args... interface{} SQL参数

func (*Conn) DataBaseName

func (d *Conn) DataBaseName() string

func (*Conn) Exec

func (d *Conn) Exec(sql string, args ...interface{}) db.ExecResult

Exec 执行一条SQL param sql string SQL param args... interface{} SQL参数

func (*Conn) FormatError

func (d *Conn) FormatError(e error) err1.Error

func (*Conn) GetConn

func (d *Conn) GetConn() db.SQL

获取db.SQL

func (*Conn) GetDb

func (d *Conn) GetDb() (*sql.DB, err1.Error)

GetDb 获取数据库对象

func (*Conn) ParseSQL

func (d *Conn) ParseSQL(sql string, args map[string]interface{}) (string, []interface{}, err1.Error)

ParseSQL 解析SQL param sql string SQL param args map[string]interface{} 参数映射

func (*Conn) Prepare

func (d *Conn) Prepare(query string) (*sql.Stmt, err1.Error)

func (*Conn) QueryRow

func (d *Conn) QueryRow(sql string, args ...interface{}) db.QueryResult

Rows 查询多条数据,结果以[]map[string]interface{}方式返回 返回结果,使用本package中的类型函数进行数据解析 eg:

result := QueryRow(...)
result.Error(func(error.Error){
	这里处理错误
}).Rows(func(map[string]interface{}) bool {
	return true //返回true,继续循环读取下一条
})

param sql string SQL param args... interface{} SQL参数

func (*Conn) QueryRows

func (d *Conn) QueryRows(sql string, args ...interface{}) db.QueryResult

Rows 查询多条数据,结果以[]map[string]interface{}方式返回 返回结果,使用本package中的类型函数进行数据解析 eg:

result := QueryRow(...)
result.Error(func(error.Error){
	这里处理错误
}).Rows(func(map[string]interface{}) bool {
	return true //返回true,继续循环读取下一条
})

param sql string SQL param args... interface{} SQL参数

func (*Conn) QueryWithPage

func (d *Conn) QueryWithPage(sql string, page *db.PageObj, args ...interface{}) db.QueryResult

RowsPage 分页查询SQL 返回结果,使用本package中的类型函数进行数据解析 eg:

result := QueryRow(...)
result.Error(func(error.Error){
	这里处理错误
}).Rows(func(map[string]interface{}) bool {
	return true //返回true,继续循环读取下一条
})

param sql string SQL param page *PageObj 分页数据 param args... interface{} SQL参数

func (*Conn) ReConnect

func (d *Conn) ReConnect()

再次连接数据库

func (*Conn) Table

func (d *Conn) Table(tbname string) string

获取完整表名[附带数据库名称]

func (*Conn) Transaction

func (d *Conn) Transaction(t db.TransactionFunc, new ...bool) err1.Error

Transaction 事务处理 param t TransactionFunc 事务处理函数

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL