发表于 2020-07-12 11:43:53 by 月小升
这里md为一个不重复的唯一键,为了防止重复,数据库设置不准相同。
thinkphp在遇到重复的时候,会停止执行。如果让thinkphp遇到数据库唯一键,批量插入的时候,能跳过错误,继续执行呢,
使用try就可以办到了。
foreach ($item as $key => $v) {
$v['messagehash'] = $v['MessageHash'];
$v['mailsystem'] = 1;
$v['md'] = '1'.'.'.$v['messagehash'];
try{
M('email_bounce')->data($v)->add();
}catch(\Exception $e){
echo '<hr />Error:'.$e->getMessage();
}
} |
foreach ($item as $key => $v) {
$v['messagehash'] = $v['MessageHash'];
$v['mailsystem'] = 1;
$v['md'] = '1'.'.'.$v['messagehash'];
try{
M('email_bounce')->data($v)->add();
}catch(\Exception $e){
echo '<hr />Error:'.$e->getMessage();
}
}
打印错误:$e->getMessage();
如果var_dump($e);可以看到更多信息,有兴趣的同学,可以试试。
This entry was posted in
PHP. Bookmark the
permalink.
月小升QQ 2651044202, 技术交流QQ群 178491360
首发地址:
月小升博客 –
https://java-er.com/blog/think-mysql-php-batch-insert/
无特殊说明,文章均为月小升原创,欢迎转载,转载请注明本文地址,谢谢
您的评论是我写作的动力.