|
@@ -207,7 +207,16 @@ func (m *Mysql) Find(tableName string, query map[string]interface{}, fields, ord
|
|
|
|
|
|
//sql语句查询
|
|
|
func (m *Mysql) SelectBySql(sql string, args ...interface{}) *[]map[string]interface{} {
|
|
|
- stmtOut, err := m.DB.Prepare(sql)
|
|
|
+ return m.SelectBySqlByTx(nil, sql, args...)
|
|
|
+}
|
|
|
+func (m *Mysql) SelectBySqlByTx(tx *sql.Tx, q string, args ...interface{}) *[]map[string]interface{} {
|
|
|
+ var stmtOut *sql.Stmt
|
|
|
+ var err error
|
|
|
+ if tx == nil {
|
|
|
+ stmtOut, err = m.DB.Prepare(q)
|
|
|
+ } else {
|
|
|
+ stmtOut, err = tx.Prepare(q)
|
|
|
+ }
|
|
|
if err != nil {
|
|
|
log.Println(err)
|
|
|
return nil
|
|
@@ -252,7 +261,6 @@ func (m *Mysql) SelectBySql(sql string, args ...interface{}) *[]map[string]inter
|
|
|
}
|
|
|
return &list
|
|
|
}
|
|
|
-
|
|
|
func (m *Mysql) FindOne(tableName string, query map[string]interface{}, fields, order string) *map[string]interface{} {
|
|
|
list := m.Find(tableName, query, fields, order, 0, 1)
|
|
|
if list != nil && len(*list) == 1 {
|