index.go 1.04 KB
package umysql

import (
	"github.com/astaxie/beego/orm"
	"strings"
)

// FindSql 查询数据 根据sql
func FindSql(dbName string, sql string, result any) (err error) {
	orm := orm.NewOrm()
	orm.Using(dbName)

	if _, err = orm.Raw(sql).QueryRows(result); err != nil {
		if strings.Contains(err.Error(), "doesn't exist") {
			err = nil
			return
		}
		return
	}
	return
}

// FindOneSql 查询一条数据 根据sql
func FindOneSql(dbName string, sql string, result any) (err error) {
	orm := orm.NewOrm()
	orm.Using(dbName)

	if err = orm.Raw(sql).QueryRow(result); err != nil {
		if strings.Contains(err.Error(), "doesn't exist") {
			err = nil
			return
		}
		return
	}
	return
}

//
//// Find 查询数据
//func Find(dbName string, tableName string, result any) (err error) {
//	o := orm.NewOrm()
//	o.Using(dbName)
//
//	// 也可以直接使用对象作为表名
//	qs := o.QueryTable(tableName)
//
//	if _, err = qs.All(result); err != nil {
//		if strings.Contains(err.Error(), "doesn't exist") {
//			err = nil
//			return
//		}
//		return
//	}
//	return
//}