Where编译时bool参数的问题
Closed this issue · 0 comments
yveshield commented
func (dba *Orm) Where(args ...interface{}) IOrm {
if len(args) == 0 ||
t.New(args[0]).Bool() == false {
return dba
}
t.New(args[0]).Bool() == false
当传入单一参数false的时候,期望的是否定条件,即查不到任何记录就对了
WHERE false
这个时候不应该省略 false
而当传入单一参数true的时候,倒是可以省略的
WHERE true and id = 1 等价于 WHERE id = 1
目前可以传入 Where("1 = 0") 来代替false