php - 隐藏所选函数的 php mysql 约束违规警告

标签 php mysql warnings

我是 PHP 新手,正在使用 http://www.php-mvc.net/ 轻型 php MVC 框架开发一个项目。 我在两个表之间有多对多映射,即

collection : id
profile : id
collection_profile : collection_id <--> profile_id

我创建了一个函数,在 collection_profile 表中插入映射行。 现在问题来了。我已经创建了 collection_idprofile_id 的复合键,因此它不会让我输入重复组合,这就是我想要的。

我已在 try,catch block 中添加了这些行。但页面上仍然显示警告:PDOStatement::execute(): SQLSTATE[23000]: Integrity Constraint Violation

我找到了error_reporting(E_ERROR),但我不知道该把这条线放在哪里。因为我只想禁用该功能的警告。

顺便说一句,我这样做是因为。我不想检查该行是否存在然后尝试插入。我希望 mysql 来完成这项工作。

如果您需要更多信息,请告诉我。

提前致谢。

最佳答案

在 PHP 中,在语句之前输入 @ 可以抑制它产生的任何警告

@$stm->execute();

但是,如果您了解发出警告的确切原因,那就更好了。您可能做错了什么。

编辑: 您可以通过执行 INSERT IGNORE 而不是 INSERT 在 MySQL 端抑制此警告,请参阅 http://dev.mysql.com/doc/refman/5.6/en/insert.html

关于php - 隐藏所选函数的 php mysql 约束违规警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24597026/

相关文章:

php - Yii2:配置参数与 const/define

php - SWFUpload:如何取消经典表单的上传

Python 和 MySQL - 非 GCC 模块?

php - 我怎样才能以更快的方式做到这一点?

java - mySQL数据库结构

r - 如何告诉 R 空向量的最大值/最小值是可以的

php - Blade 和 Twig 之间的区别

php - Cakephp 3.0 - 在组件内加载模型

python - DeprecationWarning - imp 模块

c - 解决复合分配中的转换警告