美文网首页
XORM执行SQL()的坑 2021-10-09

XORM执行SQL()的坑 2021-10-09

作者: 9_SooHyun | 来源:发表于2021-10-09 17:33 被阅读0次

    xorm是一个Go语言ORM库

    今天在使用过程中踩坑了,特此记录

    使用func (*xorm.Session).SQL(query interface{}, args ...interface{}) *xorm.Session
    或者func (*xorm.Engine).SQL(query interface{}, args ...interface{}) *xorm.Session
    都仅会执行.SQL()里面的statement
    若再对session执行func (session *Session) And(query interface{}, args ...interface{}) *Session
    或者func (session *Session) Where(query interface{}, args ...interface{}) *Session等其他条件都不会产生作用

    eg.

    func TestSQL(t *testing.T) {
        session := db.GetModel().GetEngine().NewSession()
        var hosts []db.Host
        session.SQL("select * from host").Where("id=?", 1).Find(&hosts)
        fmt.Println(hosts) // 会把id不是1的也查出来,说明Where无效
    
    }
    

    相关文章

      网友评论

          本文标题:XORM执行SQL()的坑 2021-10-09

          本文链接:https://www.haomeiwen.com/subject/yfnqoltx.html