为了账号安全,请及时绑定邮箱和手机立即绑定

Phalcon框架 使用原生Sql进行UPDATE出错

Phalcon框架 使用原生Sql进行UPDATE出错

LEATH 2019-04-16 20:27:53
在Phalcon框架中,使用原生的sql语句,进行update操作时,出现一个问题:当要操作的数据库中有某一字段内容为空时,UPDATE就会出错?这是怎么回事?有哪位大牛可以帮忙解答吗?
查看完整描述

2 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

是这样的,Phalcon的ORM会默认开启几个特性,其中之一的notNullValidations特性是检测字段是否Notnull,所以你没填写相应字段的时候会抛异常.
处理方法有2种,一种是修改数据库,另一种是关闭该特性,当然你也可以在程序逻辑中编写自动补全默认值的代码.一般来说字段设置NotNull肯定是有相应理由的,所以还是推荐把程序的逻辑写的健壮一点,而不是靠其他方式弥补编码上的失误.
文档链接:1
                            
查看完整回答
反对 回复 2019-04-16
?
BIG阳

TA贡献1859条经验 获得超6个赞

提供一下相关代码供参考:
phppublicfunctionskipValidation($skipers=[])
{
foreach($skipersas$skiper){
if(empty($this->$skiper)){
$this->$skiper=new\Phalcon\Db\RawValue('""');
}
}
}
使用的时候:
phppublicfunctionbeforeValidation()
{
......
$this->skipValidation(['tag','source_url']);
......
}
                            
查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 359 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信