PHP Postgres 约束违规 - 我可以以某种方式获取约束名称吗?

标签 php postgresql error-handling constraints

我们有一个 Web 应用程序在工作中与 Postgres SQL 数据库通信 - 我在服务器上设置了许多约束以保持数据一致,但我们无法很好地报告阻止用户输入他的(无效)数据的原因给定的时刻。

我们唯一能得到的是“违反约束”,但这不是很具描述性,从 perl 或直接从 PGAdmin 我们得到关于哪个约束导致失败(约束的名称)的好信息 - 有没有办法做同样的事情在 PHP 中?

如果有帮助,我们可以升级 PHP 或使用不同的数据库访问模块,所以我很想知道是否可以使用您可以安全推荐的任何方式进行操作。

最佳答案

你最好用pg_result_error_field ,此功能为您提供有关错误的更详细信息。如果您使用存储过程并让它们抛出异常,包括 DETAIL's and HINT's ,您的代码中的错误处理将非常容易。

关于PHP Postgres 约束违规 - 我可以以某种方式获取约束名称吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2681752/

相关文章:

php - 如何在 zend 框架中访问数据文件夹中的文件?

PostgreSQL:使用 json 对象从数组中删除键/值对

php - 如何在 PHP 中使用 PostgreSQL 函数输出

python - 如何确保输入形式为#。##

eclipse - Eclipse Mars Tomcat 8服务器消失了

php - 在网页上包含外部代码(php include() 或 get_header())

php - 具有 has_many 关系的 ModelAdmin

sql - 让SQL查询更高效

javascript - 在 Node.js 中远程调用带有上下文的函数

php - 选择匹配 1 到多个字段的用户并删除重复项