(php) update修改数据的问题

如题, 在表单修改数据时,如修改用户信息用户名,头像,联系方式等等, 在修改完个别字段后提交修改而有的字段没有修改 那提交所有的字段update肯定会影响效率尤其是有的字段数据需要经过处理,如中文转换拼音,截取等等 这种情况大家都是怎么做的呢? 如何方便的只update修改过的字段?

谢谢

可以使用MySQL的IFexpr1,expr2,expr3函数.

类似于三元运算符? :, 表达式expr1为true非null非0时, 使用expr2值, 否则使用expr3 . IF根据使用的上下文来返回数字或字符串.

如,

--以下要空值或0值才更新.
UPDATE table
SET name = IFname <> , name, 空值要更新, avatar = IFavatar, avatar, 要更新
WHERE id = 1;

能不能先将旧的记录 select 出来,然后对用户提交的表单数据进行对比过滤,过滤掉未变化的字段后再 update

get newData from user input
select oldData from db
compare newData with oldData => needUpdateData
update needUpdateData in db

发表评论

电子邮件地址不会被公开。 必填项已用*标注