(PHP 4 >= 4.0.6, PHP 5)
pg_last_notice — 返回 PostgreSQL 服务器最新一条公告信息
$connection
)
pg_last_notice()
返回由 connection
指定的 PostgreSQL 服务器最新的一条公告信息。PostgreSQL
服务器在某些情况下会发送公告信息,例如如果不能继续进行某事务时。有了
pg_last_notice(),只要检查公告是否和该事务有关,就可以避免提交无用的查询。
本函数为试验性质,并且还没有完全实现。pg_last_notice() 是 PHP 4.0.6 新增的,但是 PHP 4.0.6 本身在公告信息处理上有问题。即使不使用 pg_last_notice() 函数,也不推荐在 PHP 4.0.6 中使用 PostgreSQL 模块。
本函数在 PHP 4.3.0 中完全实现。低于 PHP 4.3.0 的版本中都忽略了数据库连接参数。
在 PHP 4.3.0 中可以通过在 php.ini 中把 pgsql.ignore_notice 置为 1 来使公告信息追踪成为可选项。
在 PHP 4.3.0 中可以通过在 php.ini 中把 pgsql.log_notice 置为 0 来使公告信息日志成为可选项。除非 pgsql.ignore_notice 为 0,否则公告信息不能被日志记录。
参见 pg_query() 和 pg_last_error()。
connection
PostgreSQL database connection resource.
A string containing the last notice on the
given connection
, or FALSE
on error.
版本 | 说明 |
---|---|
4.3.0 | This function is now fully implemented. Earlier versions ignores database connection parameter. |
4.3.0 | The pgsql.ignore_notice and pgsql.log_notice php.ini directives were added. |
4.0.6 | PHP 4.0.6 has problem with notice message handling. Use of the PostgreSQL module with PHP 4.0.6 is not recommended even if you are not using pg_last_notice(). |
Example #1 pg_last_notice() example
<?php
$pgsql_conn = pg_connect("dbname=mark host=localhost");
$res = pg_query("CREATE TABLE test (id SERIAL)");
$notice = pg_last_notice($pgsql_conn);
echo $notice;
?>
以上例程会输出:
CREATE TABLE will create implicit sequence "test_id_seq" for "serial" column "test.id"