完成dbpool改造

This commit is contained in:
aozhiwei 2024-05-10 11:38:07 +08:00
parent 55494b3002
commit 420c029154

View File

@ -70,7 +70,7 @@ func (this *dbPool) Select(
params := []string{} params := []string{}
sql := fmt.Sprintf("SELECT %s FROM %s WHERE 1=1 ", this.joinSelectFields(fields), tblName) sql := fmt.Sprintf("SELECT %s FROM %s WHERE 1=1 ", this.joinSelectFields(fields), tblName)
this.joinWhere(&sql, &params, whereKv) this.joinWhere(&sql, &params, whereKv)
go this.internalQuery(dataSource, sql, params, cb) this.query(dataSource, sql, params, cb)
} }
func (this *dbPool) OrmSelect( func (this *dbPool) OrmSelect(
@ -81,16 +81,16 @@ func (this *dbPool) OrmSelect(
params := []string{} params := []string{}
sql := fmt.Sprintf("SELECT * FROM %s WHERE 1=1 ", tblName) sql := fmt.Sprintf("SELECT * FROM %s WHERE 1=1 ", tblName)
this.joinWhere(&sql, &params, whereKv) this.joinWhere(&sql, &params, whereKv)
go this.internalQuery(dataSource, sql, params, cb) this.query(dataSource, sql, params, cb)
} }
func (this *dbPool) RawQuery(dataSource string, sql string, params []string, cb QueryResultCb) { func (this *dbPool) RawQuery(dataSource string, sql string, params []string, cb QueryResultCb) {
go this.internalQuery(dataSource, sql, params, cb) this.query(dataSource, sql, params, cb)
} }
func (this *dbPool) SelectCustomQuery(dataSource string, sql string, cb QueryResultCb) { func (this *dbPool) SelectCustomQuery(dataSource string, sql string, cb QueryResultCb) {
params := []string{} params := []string{}
go this.internalQuery(dataSource, sql, params, cb) this.query(dataSource, sql, params, cb)
} }
func (this *dbPool) SyncSelectCustomQuery(dataSource string, sql string, cb QueryResultCb) { func (this *dbPool) SyncSelectCustomQuery(dataSource string, sql string, cb QueryResultCb) {
@ -168,7 +168,7 @@ func (this *dbPool) SelectLike(
this.joinWhereLike(&sql, &params, likeWhere) this.joinWhereLike(&sql, &params, likeWhere)
sql = fmt.Sprintf("%s ORDER BY idx ASC LIMIT %d", sql, limit) sql = fmt.Sprintf("%s ORDER BY idx ASC LIMIT %d", sql, limit)
go this.internalQuery(dataSource, sql, params, cb) this.query(dataSource, sql, params, cb)
} }
func (this *dbPool) SelectOne( func (this *dbPool) SelectOne(
@ -180,7 +180,7 @@ func (this *dbPool) SelectOne(
params := []string{} params := []string{}
sql := fmt.Sprintf("SELECT %s FROM %s WHERE 1=1 ", this.joinSelectFields(fields), tblName) sql := fmt.Sprintf("SELECT %s FROM %s WHERE 1=1 ", this.joinSelectFields(fields), tblName)
this.joinWhere(&sql, &params, whereKv) this.joinWhere(&sql, &params, whereKv)
go this.internalQueryOne(dataSource, sql, params, cb) this.queryOne(dataSource, sql, params, cb)
} }
func (this *dbPool) OrmSelectOne( func (this *dbPool) OrmSelectOne(
@ -191,7 +191,7 @@ func (this *dbPool) OrmSelectOne(
params := []string{} params := []string{}
sql := fmt.Sprintf("SELECT * FROM %s WHERE 1=1 ", tblName) sql := fmt.Sprintf("SELECT * FROM %s WHERE 1=1 ", tblName)
this.joinWhere(&sql, &params, whereKv) this.joinWhere(&sql, &params, whereKv)
go this.internalQueryOne(dataSource, sql, params, cb) this.queryOne(dataSource, sql, params, cb)
} }
func (this *dbPool) Update( func (this *dbPool) Update(
@ -204,7 +204,7 @@ func (this *dbPool) Update(
sql := "UPDATE `" + tblName + "` SET " + this.joinUpdateFields(fieldsKv, &params) + sql := "UPDATE `" + tblName + "` SET " + this.joinUpdateFields(fieldsKv, &params) +
" WHERE 1=1" " WHERE 1=1"
this.joinWhere(&sql, &params, whereKv) this.joinWhere(&sql, &params, whereKv)
go this.internalExec(dataSource, sql, params, cb) this.exec(dataSource, sql, params, cb)
} }
func (this *dbPool) Insert( func (this *dbPool) Insert(
@ -214,17 +214,7 @@ func (this *dbPool) Insert(
cb ExecResultCb) { cb ExecResultCb) {
params := []string{} params := []string{}
sql := "INSERT INTO `" + tblName + "` " + this.joinInsertFields(fieldsKv, &params) sql := "INSERT INTO `" + tblName + "` " + this.joinInsertFields(fieldsKv, &params)
go this.internalExec(dataSource, sql, params, cb) this.exec(dataSource, sql, params, cb)
}
func (this *dbPool) Replace(
dataSource string,
tblName string,
fieldsKv [][]string,
cb ExecResultCb) {
params := []string{}
sql := "REPLACE INTO `" + tblName + "` " + this.joinInsertFields(fieldsKv, &params)
go this.internalExec(dataSource, sql, params, cb)
} }
func (this *dbPool) Upsert( func (this *dbPool) Upsert(
@ -268,7 +258,7 @@ func (this *dbPool) PageQuery(
finalySql += " " + orderBy + " " finalySql += " " + orderBy + " "
} }
//GetSysLog().Info("finalySql:%s", finalySql) //GetSysLog().Info("finalySql:%s", finalySql)
go this.internalQueryOne( this.queryOne(
dataSource, dataSource,
fmt.Sprintf("SELECT COUNT(*) FROM (%s) as t", finalySql), fmt.Sprintf("SELECT COUNT(*) FROM (%s) as t", finalySql),
params, params,
@ -284,7 +274,7 @@ func (this *dbPool) PageQuery(
} }
start := pagination.PerPage * (pagination.CurrentPage - 1) start := pagination.PerPage * (pagination.CurrentPage - 1)
limit := pagination.PerPage limit := pagination.PerPage
go this.internalQuery( this.query(
dataSource, dataSource,
fmt.Sprintf("%s LIMIT %d, %d", finalySql, start, limit), fmt.Sprintf("%s LIMIT %d, %d", finalySql, start, limit),
params, params,
@ -524,3 +514,30 @@ func (this *dbPool) internalQueryOne(dataSource string, sql string, params []str
}) })
} }
} }
func (this* dbPool) query(dataSource string, sql string, params []string,
cb QueryResultCb) {
if this.style == GO_STYLE_DB {
this.internalQuery(dataSource, sql, params, cb)
} else {
go this.internalQuery(dataSource, sql, params, cb)
}
}
func (this *dbPool) exec(dataSource string, sql string, params []string,
cb ExecResultCb) {
if this.style == GO_STYLE_DB {
this.internalExec(dataSource, sql, params, cb)
} else {
go this.internalExec(dataSource, sql, params, cb)
}
}
func (this *dbPool) queryOne(dataSource string, sql string, params []string,
cb QueryOneCb) {
if this.style == GO_STYLE_DB {
this.internalQueryOne(dataSource, sql, params, cb)
} else {
go this.internalQueryOne(dataSource, sql, params, cb)
}
}