navicat数据插入失败一种原因(1062 Duplicate entry)
·
navicat数据插入失败原因(1062 Duplicate entry)
数据表中phone字段增加了唯一索引
laravel 模型用了软删除
业务逻辑:传入手机号,判断传入的phone是否在数据表中,有返回
phone重复提示,没有新建一条数据
情景再现:传入手机号,报
1062 Duplicate entry '158****112' for key 'phone' in ...
提示phone重复,按业务逻辑应该先返回phone重复,而不是报错
查数据表发现一条软删除数据,phone字段为上面传入的手机号
报错原因:在判断phone是否重复时,由于用了ORM的软删除,导致未查找到该数据,入库时由于phone字段有唯一索引导致了报错
解决:手动删除这条软删数据或者用withtrashed()方法
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)