作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com
使用上面的API,程序员很有可能定义出来没有任何意义的查询,比如一个字段,在假定记录存在的情况下,既被设置为了忽略,又被设置为了表达式。下面的规则,可以帮助减少潜在的错误:
· 如果一个字段设置成一个expression(),那么它的优先级高于update()和updateExcept()。
· 如果在update()中已经指定了值,那么updateExcept()将被忽略。也就是update()的优先级高于updateExcept()。
· 如果值被指定在update()中,那么在记录已存在时,只有这些字段才会被修改。没有在update()中指定的字段将不受影响。
即便是遵守这些规则,仍然有可能定义出来没有意义的查询。查询的有效性,需要开发者自己来掌握,尽量避免定义出没有意义的查询。