Documentation ¶
Index ¶
- Variables
- func CamelCase(s string) string
- func DbConnect(dsn string) (*sql.DB, error)
- func DeleteSql(connect *sql.DB, insSql string, args ...interface{}) (num int64, err error)
- func FiledType2GoType(fieldTypeStr string) string
- func GenerateGormModel(connect *sql.DB, dbName string, tableNames []string, cfg map[string]string) map[string]string
- func GetDbConnect(dbnameCode, dsn string) (*sql.DB, error)
- func GetDsn(dbConfig map[string]interface{}) string
- func GetFieldComment(field map[string]string) string
- func GetHashOrd(str string) int64
- func GetHashOrd127(str string) int64
- func GetLikeStr(str string, pos int) string
- func GetSimpleTableInfo(connect *sql.DB, dbName string, tableNames []string) []map[string]string
- func GetTableFields(connect *sql.DB, tbl string) ([]map[string]string, error)
- func GormModelFormat(table map[string]string, fields []map[string]string, cfg map[string]string) string
- func InsertSql(connect *sql.DB, insSql string, args ...interface{}) (id int64, err error)
- func JoinInt2Str(data []int, sep string) string
- func JoinInt642Str(data []int64, sep string) string
- func Md5V1(str string) string
- func PinConditionIn(field string, condition string, values []interface{}) (string, []interface{})
- func PinInStr(strs []string) string
- func PinWhereNotIn(field string, values []interface{}) (string, []interface{})
- func SelectOne(connect *sql.DB, sqlStr string, args ...interface{}) (map[string]string, error)
- func SelectRows(connect *sql.DB, sqlStr string, args ...interface{}) ([]map[string]string, error)
- func ShowCreateTable(connect *sql.DB, tblName string) (string, error)
- func ShowTables(connect *sql.DB) []string
- func StrInSlice(a string, list []string) bool
- func UpdateSql(connect *sql.DB, insSql string, args ...interface{}) (num int64, err error)
- func WenHaoPlaceholders(n int) string
- func WrapField(field string) string
- func WrapTable(field string) string
- type GormModel
- type MysqlDsn
- func (m *MysqlDsn) GetCharset() string
- func (m *MysqlDsn) GetDbname() string
- func (m *MysqlDsn) GetExtparam() string
- func (m *MysqlDsn) GetHost() string
- func (m *MysqlDsn) GetPassword() string
- func (m *MysqlDsn) GetPort() string
- func (m *MysqlDsn) GetUsername() string
- func (m *MysqlDsn) Key() string
- func (m *MysqlDsn) ToDsn() string
- type SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) ConditionWhere(operator string, field string, condition string, value interface{}) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) GetSQL() (string, error)
- func (sqlb *SQLBuilderDelete) GetWhereParamValues() []interface{}
- func (sqlb *SQLBuilderDelete) OrWhere(field string, condition string, value interface{}) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) OrWhereIn(field string, values ...interface{}) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) OrWhereNotIn(field string, values ...interface{}) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) OrWhereRaw(raw string, values ...interface{}) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) OrderBy(order string) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) Raw(operator string, raw string, values []interface{}) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) SetLimit(rowCount string) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) SetTable(tbl string) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) Where(field string, condition string, value interface{}) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) WhereIn(field string, values ...interface{}) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) WhereNotIn(field string, values ...interface{}) *SQLBuilderDelete
- func (sqlb *SQLBuilderDelete) WhereRaw(raw string, values ...interface{}) *SQLBuilderDelete
- type SQLBuilderInsert
- type SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) ConditionWhere(operator string, field string, condition string, value interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) GetSQL() (string, error)
- func (sqlb *SQLBuilderSelect) GetWhereParamValues() []interface{}
- func (sqlb *SQLBuilderSelect) GroupBy(fields ...string) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) JoinRaw(join string, values ...interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) OrWhere(field string, condition string, value interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) OrWhereIn(field string, values ...interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) OrWhereNotIn(field string, values ...interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) OrWhereRaw(raw string, values ...interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) OrderBy(order string) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) Raw(operator string, raw string, values []interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) Select(fields ...string) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) SetTable(tbl string) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) Where(field string, condition string, value interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) WhereIn(field string, values ...interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) WhereNotIn(field string, values ...interface{}) *SQLBuilderSelect
- func (sqlb *SQLBuilderSelect) WhereRaw(raw string, values ...interface{}) *SQLBuilderSelect
- type SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) ConditionWhere(operator string, field string, condition string, value interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) GetParamValues() []interface{}
- func (sqlb *SQLBuilderUpdate) GetSQL() (string, error)
- func (sqlb *SQLBuilderUpdate) GetSetParamValues() []interface{}
- func (sqlb *SQLBuilderUpdate) GetWhereParamValues() []interface{}
- func (sqlb *SQLBuilderUpdate) OrWhere(field string, condition string, value interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) OrWhereIn(field string, values ...interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) OrWhereNotIn(field string, values ...interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) OrWhereRaw(raw string, values ...interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) OrderBy(order string) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) Raw(operator string, raw string, values []interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) SetLimit(rowCount string) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) SetTable(tbl string) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) SetUpdateData(fileds []string, values ...interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) Where(field string, condition string, value interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) WhereIn(field string, values ...interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) WhereNotIn(field string, values ...interface{}) *SQLBuilderUpdate
- func (sqlb *SQLBuilderUpdate) WhereRaw(raw string, values ...interface{}) *SQLBuilderUpdate
- type SplitDbAndTbl
- func (t SplitDbAndTbl) GetDBBaseByStrUserid(userid string) map[string]int64
- func (t SplitDbAndTbl) GetDBBaseByUserid(userid uint64) map[string]int64
- func (t SplitDbAndTbl) GetDbNum(sVal string) (dbnum int64, err error)
- func (t SplitDbAndTbl) GetDbNum4int64(ival int64) (dbnum int64, err error)
- func (t SplitDbAndTbl) GetTblNum(sVal string) (tblnum int64, err error)
- func (t SplitDbAndTbl) GetTblNum4int64(ival int64) (tblnum int64, err error)
- func (t SplitDbAndTbl) GetTotalDbNum() int64
- func (t SplitDbAndTbl) GetTotalTblNum() int64
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func FiledType2GoType ¶
db字段类型转go类型, fieldTypeStr=bigint(20)
func GenerateGormModel ¶
func GenerateGormModel(connect *sql.DB, dbName string, tableNames []string, cfg map[string]string) map[string]string
生成gorm的model结构体
func GetHashOrd ¶
func GetLikeStr ¶
func GetSimpleTableInfo ¶
func GetTableFields ¶
获取表字段信息
func GormModelFormat ¶
func GormModelFormat(table map[string]string, fields []map[string]string, cfg map[string]string) string
table=["Name":"表名", "Comment":"表注解"], cfg=["packageName":"包名", "ignoreField":"id,is_delete,create_time,update_time,delete_time,modify_time","appendStructCode":"GormCommonField","trimTblPrefix":"t_","structNameSuffix":"Model"]
func InsertSql ¶
执行插入记录sql 示例:insSql := "insert INTO t_user_token_1(user_id,user_token) values(?,?)" id,err := InsertSql(connect, insSql, "1000", "token123")
func JoinInt2Str ¶
func JoinInt642Str ¶
func PinConditionIn ¶
in, v := PinWhereIn("username", "in", []interface{}{11, 22,33}) 返回 username IN (?,?,?) 、[11 22 33]
func PinWhereNotIn ¶
in, v := PinWhereNotIn("username", []interface{}{11, 22,33}) 返回 username NOT IN (?,?,?) 、[11 22 33]
func SelectRows ¶
查询多条记录
func ShowCreateTable ¶
获取创建表sql语句
func UpdateSql ¶
更新记录sql 示例:upSql := "update t_user_token_1 set user_token=?,update_time=? where user_id=? order by id desc limit 1" id,err := UpdateSql(connect, upSql, "token123abc222", time.Now().Unix(),"1000")
func WenHaoPlaceholders ¶
Types ¶
type MysqlDsn ¶
type MysqlDsn struct {
// contains filtered or unexported fields
}
func NewMysqlDsn ¶
mysqlDsnObj := dbutils.NewMysqlDsn(map[string]interface{}{"dbname":"db_user","username":"root","password":"123456","port":3307})
func (*MysqlDsn) GetCharset ¶
func (*MysqlDsn) GetExtparam ¶
func (*MysqlDsn) GetPassword ¶
func (*MysqlDsn) GetUsername ¶
type SQLBuilderDelete ¶
type SQLBuilderDelete struct {
// contains filtered or unexported fields
}
func NewSQLBuilderDelete ¶
func NewSQLBuilderDelete() *SQLBuilderDelete
func (*SQLBuilderDelete) ConditionWhere ¶
func (sqlb *SQLBuilderDelete) ConditionWhere(operator string, field string, condition string, value interface{}) *SQLBuilderDelete
考虑重复调用,operator=AND、OR, condition="=,!="
func (*SQLBuilderDelete) GetSQL ¶
func (sqlb *SQLBuilderDelete) GetSQL() (string, error)
func (*SQLBuilderDelete) GetWhereParamValues ¶
func (sqlb *SQLBuilderDelete) GetWhereParamValues() []interface{}
func (*SQLBuilderDelete) OrWhere ¶
func (sqlb *SQLBuilderDelete) OrWhere(field string, condition string, value interface{}) *SQLBuilderDelete
func (*SQLBuilderDelete) OrWhereIn ¶
func (sqlb *SQLBuilderDelete) OrWhereIn(field string, values ...interface{}) *SQLBuilderDelete
func (*SQLBuilderDelete) OrWhereNotIn ¶
func (sqlb *SQLBuilderDelete) OrWhereNotIn(field string, values ...interface{}) *SQLBuilderDelete
func (*SQLBuilderDelete) OrWhereRaw ¶
func (sqlb *SQLBuilderDelete) OrWhereRaw(raw string, values ...interface{}) *SQLBuilderDelete
OrWhereRaw("(`age` = ? OR `sex` = ?) AND `class` = ?", 7, 1, "一年级2班")
func (*SQLBuilderDelete) OrderBy ¶
func (sqlb *SQLBuilderDelete) OrderBy(order string) *SQLBuilderDelete
func (*SQLBuilderDelete) Raw ¶
func (sqlb *SQLBuilderDelete) Raw(operator string, raw string, values []interface{}) *SQLBuilderDelete
func (*SQLBuilderDelete) SetLimit ¶
func (sqlb *SQLBuilderDelete) SetLimit(rowCount string) *SQLBuilderDelete
func (*SQLBuilderDelete) SetTable ¶
func (sqlb *SQLBuilderDelete) SetTable(tbl string) *SQLBuilderDelete
func (*SQLBuilderDelete) Where ¶
func (sqlb *SQLBuilderDelete) Where(field string, condition string, value interface{}) *SQLBuilderDelete
func (*SQLBuilderDelete) WhereIn ¶
func (sqlb *SQLBuilderDelete) WhereIn(field string, values ...interface{}) *SQLBuilderDelete
func (*SQLBuilderDelete) WhereNotIn ¶
func (sqlb *SQLBuilderDelete) WhereNotIn(field string, values ...interface{}) *SQLBuilderDelete
func (*SQLBuilderDelete) WhereRaw ¶
func (sqlb *SQLBuilderDelete) WhereRaw(raw string, values ...interface{}) *SQLBuilderDelete
WhereRaw("`title` = ?", "hello")
type SQLBuilderInsert ¶
type SQLBuilderInsert struct {
// contains filtered or unexported fields
}
func NewSQLBuilderInsert ¶
func NewSQLBuilderInsert() *SQLBuilderInsert
func (*SQLBuilderInsert) GetParamValues ¶
func (sqlb *SQLBuilderInsert) GetParamValues() []interface{}
func (*SQLBuilderInsert) GetSql ¶
func (sqlb *SQLBuilderInsert) GetSql() (string, error)
INSERT INTO [表名] ([字段名]) VALUES ([要插入的值]): INSERT INTO `bbs_user`(`email`,`username`,`qq`) VALUES (?,?,?)
func (*SQLBuilderInsert) SetInsertData ¶
func (sqlb *SQLBuilderInsert) SetInsertData(fileds []string, values ...interface{}) *SQLBuilderInsert
SetInsertData([]string{"`name`", "`age`"}, "tom", 18)
func (*SQLBuilderInsert) SetTable ¶
func (sqlb *SQLBuilderInsert) SetTable(tbl string) *SQLBuilderInsert
type SQLBuilderSelect ¶
type SQLBuilderSelect struct {
// contains filtered or unexported fields
}
func NewSQLBuilderSelect ¶
func NewSQLBuilderSelect() *SQLBuilderSelect
func (*SQLBuilderSelect) ConditionWhere ¶
func (sqlb *SQLBuilderSelect) ConditionWhere(operator string, field string, condition string, value interface{}) *SQLBuilderSelect
考虑重复调用,operator=AND、OR, condition="=,!="
func (*SQLBuilderSelect) GetSQL ¶
func (sqlb *SQLBuilderSelect) GetSQL() (string, error)
func (*SQLBuilderSelect) GetWhereParamValues ¶
func (sqlb *SQLBuilderSelect) GetWhereParamValues() []interface{}
func (*SQLBuilderSelect) GroupBy ¶
func (sqlb *SQLBuilderSelect) GroupBy(fields ...string) *SQLBuilderSelect
GroupBy("`age`", "`id`")
func (*SQLBuilderSelect) JoinRaw ¶
func (sqlb *SQLBuilderSelect) JoinRaw(join string, values ...interface{}) *SQLBuilderSelect
JoinRaw("LEFT JOIN `t_user` as `t2` ON `t1`.`userid` = `t2`.`userid`").
func (*SQLBuilderSelect) OrWhere ¶
func (sqlb *SQLBuilderSelect) OrWhere(field string, condition string, value interface{}) *SQLBuilderSelect
func (*SQLBuilderSelect) OrWhereIn ¶
func (sqlb *SQLBuilderSelect) OrWhereIn(field string, values ...interface{}) *SQLBuilderSelect
func (*SQLBuilderSelect) OrWhereNotIn ¶
func (sqlb *SQLBuilderSelect) OrWhereNotIn(field string, values ...interface{}) *SQLBuilderSelect
func (*SQLBuilderSelect) OrWhereRaw ¶
func (sqlb *SQLBuilderSelect) OrWhereRaw(raw string, values ...interface{}) *SQLBuilderSelect
OrWhereRaw("(`age` = ? OR `sex` = ?) AND `class` = ?", 7, 1, "一年级2班")
func (*SQLBuilderSelect) OrderBy ¶
func (sqlb *SQLBuilderSelect) OrderBy(order string) *SQLBuilderSelect
func (*SQLBuilderSelect) Raw ¶
func (sqlb *SQLBuilderSelect) Raw(operator string, raw string, values []interface{}) *SQLBuilderSelect
func (*SQLBuilderSelect) Select ¶
func (sqlb *SQLBuilderSelect) Select(fields ...string) *SQLBuilderSelect
func (*SQLBuilderSelect) SetTable ¶
func (sqlb *SQLBuilderSelect) SetTable(tbl string) *SQLBuilderSelect
Table("`t_user_ext` as t1")
func (*SQLBuilderSelect) Where ¶
func (sqlb *SQLBuilderSelect) Where(field string, condition string, value interface{}) *SQLBuilderSelect
func (*SQLBuilderSelect) WhereIn ¶
func (sqlb *SQLBuilderSelect) WhereIn(field string, values ...interface{}) *SQLBuilderSelect
func (*SQLBuilderSelect) WhereNotIn ¶
func (sqlb *SQLBuilderSelect) WhereNotIn(field string, values ...interface{}) *SQLBuilderSelect
func (*SQLBuilderSelect) WhereRaw ¶
func (sqlb *SQLBuilderSelect) WhereRaw(raw string, values ...interface{}) *SQLBuilderSelect
WhereRaw("`title` = ?", "hello")
type SQLBuilderUpdate ¶
type SQLBuilderUpdate struct {
// contains filtered or unexported fields
}
func NewSQLBuilderUpdate ¶
func NewSQLBuilderUpdate() *SQLBuilderUpdate
func (*SQLBuilderUpdate) ConditionWhere ¶
func (sqlb *SQLBuilderUpdate) ConditionWhere(operator string, field string, condition string, value interface{}) *SQLBuilderUpdate
考虑重复调用,operator=AND、OR,condition=<、<=、=、!=、>
func (*SQLBuilderUpdate) GetParamValues ¶
func (sqlb *SQLBuilderUpdate) GetParamValues() []interface{}
func (*SQLBuilderUpdate) GetSQL ¶
func (sqlb *SQLBuilderUpdate) GetSQL() (string, error)
UPDATE [表名] [SET 子句] [WHERE 子句] [ORDER BY ...] [LIMIT row_count]
func (*SQLBuilderUpdate) GetSetParamValues ¶
func (sqlb *SQLBuilderUpdate) GetSetParamValues() []interface{}
func (*SQLBuilderUpdate) GetWhereParamValues ¶
func (sqlb *SQLBuilderUpdate) GetWhereParamValues() []interface{}
func (*SQLBuilderUpdate) OrWhere ¶
func (sqlb *SQLBuilderUpdate) OrWhere(field string, condition string, value interface{}) *SQLBuilderUpdate
func (*SQLBuilderUpdate) OrWhereIn ¶
func (sqlb *SQLBuilderUpdate) OrWhereIn(field string, values ...interface{}) *SQLBuilderUpdate
func (*SQLBuilderUpdate) OrWhereNotIn ¶
func (sqlb *SQLBuilderUpdate) OrWhereNotIn(field string, values ...interface{}) *SQLBuilderUpdate
func (*SQLBuilderUpdate) OrWhereRaw ¶
func (sqlb *SQLBuilderUpdate) OrWhereRaw(raw string, values ...interface{}) *SQLBuilderUpdate
OrWhereRaw("(`age` = ? OR `sex` = ?) AND `class` = ?", 7, 1, "一年级2班")
func (*SQLBuilderUpdate) OrderBy ¶
func (sqlb *SQLBuilderUpdate) OrderBy(order string) *SQLBuilderUpdate
func (*SQLBuilderUpdate) Raw ¶
func (sqlb *SQLBuilderUpdate) Raw(operator string, raw string, values []interface{}) *SQLBuilderUpdate
func (*SQLBuilderUpdate) SetLimit ¶
func (sqlb *SQLBuilderUpdate) SetLimit(rowCount string) *SQLBuilderUpdate
func (*SQLBuilderUpdate) SetTable ¶
func (sqlb *SQLBuilderUpdate) SetTable(tbl string) *SQLBuilderUpdate
func (*SQLBuilderUpdate) SetUpdateData ¶
func (sqlb *SQLBuilderUpdate) SetUpdateData(fileds []string, values ...interface{}) *SQLBuilderUpdate
func (*SQLBuilderUpdate) Where ¶
func (sqlb *SQLBuilderUpdate) Where(field string, condition string, value interface{}) *SQLBuilderUpdate
func (*SQLBuilderUpdate) WhereIn ¶
func (sqlb *SQLBuilderUpdate) WhereIn(field string, values ...interface{}) *SQLBuilderUpdate
func (*SQLBuilderUpdate) WhereNotIn ¶
func (sqlb *SQLBuilderUpdate) WhereNotIn(field string, values ...interface{}) *SQLBuilderUpdate
func (*SQLBuilderUpdate) WhereRaw ¶
func (sqlb *SQLBuilderUpdate) WhereRaw(raw string, values ...interface{}) *SQLBuilderUpdate
WhereRaw("`title` = ?", "hello")
type SplitDbAndTbl ¶
type SplitDbAndTbl struct {
// contains filtered or unexported fields
}
分库分表数量结构体
func NewSplitDbAndTbl ¶
func NewSplitDbAndTbl(dbnum, tblnum int64) SplitDbAndTbl
func (SplitDbAndTbl) GetDBBaseByStrUserid ¶
func (t SplitDbAndTbl) GetDBBaseByStrUserid(userid string) map[string]int64
字符串型的用户ID,返回分配的库号和表号
func (SplitDbAndTbl) GetDBBaseByUserid ¶
func (t SplitDbAndTbl) GetDBBaseByUserid(userid uint64) map[string]int64
返回分配的库号和表号
func (SplitDbAndTbl) GetDbNum ¶
func (t SplitDbAndTbl) GetDbNum(sVal string) (dbnum int64, err error)
入参sVal值是可以转为int64类型的字符串,获取分配的库号
func (SplitDbAndTbl) GetDbNum4int64 ¶ added in v1.0.1
func (t SplitDbAndTbl) GetDbNum4int64(ival int64) (dbnum int64, err error)
func (SplitDbAndTbl) GetTblNum ¶
func (t SplitDbAndTbl) GetTblNum(sVal string) (tblnum int64, err error)
入参sVal值是可以转为int64类型的字符串,获取分配的表号
func (SplitDbAndTbl) GetTblNum4int64 ¶ added in v1.0.1
func (t SplitDbAndTbl) GetTblNum4int64(ival int64) (tblnum int64, err error)
func (SplitDbAndTbl) GetTotalDbNum ¶
func (t SplitDbAndTbl) GetTotalDbNum() int64
func (SplitDbAndTbl) GetTotalTblNum ¶
func (t SplitDbAndTbl) GetTotalTblNum() int64