PHP、Postgres 帮助使用 RETURNING

标签 php postgresql sql-returning

我想我了解 PostgreSQL 和 RETURNING 的工作原理 - 我找到了很多很多资源。如果我 catch ,它看起来像

"INSERT INTO table (column2, column3) VALUES ('value1', 'value2') RETURNING id;"

但是,我找不到任何可以帮助我通过 PHP 访问它的东西。当我认为我想通了的时候,我尝试了一下

$new_id = pg_query($dbc, "INSERT INTO table (column2, column3) ".
"VALUES ('value1', 'value2') RETURNING id;");
return $new_id;

但它返回 NULL。我还尝试使用一个查询分别执行和声明变量。在寻找解决方案数小时后,我确定了 max(id) SELECT 语句/函数,但它仍然困扰着我。非常感谢任何帮助。

我使用的是 Postgres 8.4 和 PHP 5.3。

最佳答案

$new_id 不包含 id 但它是一个资源描述符。您需要从中获取数据,因为查询将是 SELECT,例如使用 pg_fetch_array($new_id)

PostgreSQL 的 RETURNING 子句投影插入或修改行的任何字段,即 INSERT|UPDATE … RETURNING id, field1, field2

关于PHP、Postgres 帮助使用 RETURNING,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13070752/

相关文章:

postgresql - Postgres CTE : type character varying(255)[] in non-recursive term but type character varying[] overall

postgresql - INSERT RETURNING 是否保证返回 "right"顺序的东西?

postgresql - 一个 INSERT 多个 SELECT

php - 多个 OR ( || ) 和一个 && 在 if 语句中

javascript - 如何在 jquery 中将 img src 设置为 php session

PHP MYSQL : Delete user

sql - 将列从 varchar 更改为整数并删除非数字字符

sql - 如何以原子方式更新一个关系,结果接收一组与另一个关系连接的元组?

php - 使用 OOP PHP ORM 选择查询

postgresql - 错误 : syntax error at or near "RETURN" , PostgreSQL 函数