>백엔드 개발 >PHP 튜토리얼 >php+mysql插入重复数据的时候抛出异常,能不能捕获异常啊

php+mysql插入重复数据的时候抛出异常,能不能捕获异常啊

WBOY
WBOY원래의
2016-07-06 13:52:171271검색

我的意思能插入就返回true,不能就返回false,但是不能插入的时候,直接显示这个

php+mysql插入重复数据的时候抛出异常,能不能捕获异常啊

负上我的代码:

php+mysql插入重复数据的时候抛出异常,能不能捕获异常啊

回复内容:

我的意思能插入就返回true,不能就返回false,但是不能插入的时候,直接显示这个

php+mysql插入重复数据的时候抛出异常,能不能捕获异常啊

负上我的代码:

php+mysql插入重复数据的时候抛出异常,能不能捕获异常啊

自然是可以的。
你可以通过以下三种方式然后再结合你的业务需求进行页面跳转

Ignore:有重复则忽略。

<code>INSERT IGNORE INTO `table_name` (`email`, `phone`, `user_id`) 
VALUES ('test9@163.com', '99999', '9999');
</code>

Replace:有重复则删旧数据再增加新数据

<code>REPLACE INTO `table_name`(`col_name`, ...) VALUES (...);
REPLACE INTO `table_name` (`col_name`, ...) SELECT ...;
REPLACE INTO `table_name` SET `col_name`='value'
</code>

On duplicate key update:有重复则更新

<code>INSERT INTO `table` (`a`, `b`, `c`) VALUES (1, 2, 3), (4, 5, 6) 
ON DUPLICATE KEY UPDATE `c`=VALUES(`a`)+VALUES(`b`);

</code>

推荐文章: MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)

你可以自己把这个Exception Catch,然后返回 true 或 false

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.