[转]php连接postgresql

第1推荐一下postgres数据库,免费,强大,甚至一些方面比经济贸易数据库还要好,大家能够试行。

 

安装:

附安装图解(网上找的):http://blog.sina.com.cn/s/blog_5edb701b0100mwi7.html

增加补充有个别:最终Stack
Builder提醒下载的事物,假如网速倒霉,或许有事,能够不下载,不影响使用。

 

PHP连接:

php.ini中将extension=php_pgsql.dll后面包车型客车分公司去掉,然后设置extension_dir指向php文件下的ext文件夹。

可能直接把将./php/libpq.dll(php文件夹下的libpq.dll)和./php/ext/php_pgsql.dll(ext文件夹下的php_pgsql.dll)那八个dll文件复制到C盘system32下。

常规状态下那样php就能够接连postgres了,可是本人的照样出错,提醒“Fatal
error: Call to undefined function pg_connect()”,查看Apache的日志,“PHP
Startup: Unable to load dynamic library
‘****\\PHP5\\ext\\php_pdo_pgsql.dll”。

由此查找,在Apache中conf文件夹下的布署文件httpd.conf中添加 LoadFile
“***/PHP5/libpq.dll”,地点在LoadModule前边即可。

(***为php安装路径)

测试代码:

<?php
$conn_string  =  "host=localhost port=5432 dbname=db_name user=your user password=your password" ; 
$dbconn = pg_connect($conn_string);
if (!$dbconn) 
    echo "连接失败!!!!!/r/n";
else 
    echo "连接成功!!!!!/r/n";
    pg_close($dbconn);
?>

user一般为安装期间新建的用户postgres


例 1767. PostgreSQL 例子
<?php
// 连接,选择数据库
$dbconn = pg_connect("host=localhost dbname=publishing user=postgres password=foo port=5432")
    or die('Could not connect: ' . pg_last_error());

// 执行 SQL 查询
$query = 'SELECT * FROM authors';
$result = pg_query($query) or die('Query failed: ' . pg_last_error());

// 用 HTML 显示结果
echo "<table>\n";
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
    echo "\t<tr>\n";
    foreach ($line as $col_value) {
        echo "\t\t<td>$col_value</td>\n";
    }
    echo "\t</tr>\n";
}
echo "</table>\n";

// 释放结果集
pg_free_result($result);

// 关闭连接
pg_close($dbconn);
?>

目录

pg_affected_rows — 重返受影响的笔录数据

pg_cancel_query — 废除异步查询

pg_client_encoding — 取得客户端编码方式

pg_close — 关闭三个 PostgreSQL 连接

pg_connect — 打开三个 PostgreSQL 连接

pg_connection_busy — 获知连接是还是不是为忙

pg_connection_reset — 重置连接(再一次连接)

pg_connection_status — 获得再三再四境况

pg_convert — 将关系的数组值转换为顺应 SQL
语句的格式。

pg_copy_from — 依照数组将记录插入表中

pg_copy_to — 将一个表拷贝到数组中

pg_dbname — 获得数据库名

pg_delete — 删除记录

pg_end_copy — 与 PostgreSQL 后端同步

pg_escape_bytea — 转义 bytea 类型的二进制数据

pg_escape_string — 转义 text/char 类型的字符串

pg_execute — Sends a request to execute a prepared statement
with given parameters, and waits for the result.

pg_fetch_all_columns — Fetches all rows in a particular result column as
an array

pg_fetch_all — 从结果中领取全体行作为叁个数组

pg_fetch_array — 提取一行作为数组

pg_fetch_assoc — 提取一行作为关乎数组

pg_fetch_object — 提取一行作为指标

pg_fetch_result — 从结果能源中重返值

pg_fetch_row — 提取一行作为枚举数组

pg_field_is_null — 测试字段是不是为 NULL

pg_field_name — 重返字段的名字

pg_PHP,field_num — 再次回到字段的号码

pg_field_prtlen — 重返打字与印刷出来的长短

pg_field_size — 重临钦定字段占用内部存款和储蓄空间的高低

pg_field_table — Returns the name or oid of the tables
field

pg_field_type_oid — Returns the type ID (OID) for the corresponding
field number

pg_field_type — 重返相应字段的连串称称

pg_free_result — 释放查询结果占用的内部存款和储蓄器

pg_get_notify — Ping 数据库连接

pg_get_pid — Ping 数据库连接

pg_get_result — 取得异步查询结果

pg_host — 再次来到和某总是关联的主机名

pg_insert — 将数组插入到表中

pg_last_error — 获得某老是的尾声一条错误新闻

pg_last_notice — 重返 PostgreSQL
服务器最新一条通告音讯

pg_last_oid — 再次回到上三个对象的 oid

pg_lo_close — 关闭一个巨型对象

pg_lo_create — 新建一个特大型对象

pg_lo_export — 将重型对象导出到文件

pg_lo_import — 将文件导入为大型对象

pg_lo_open — 打开二个巨型对象

pg_lo_read_all — 读入整个大型对象并向来发送给浏览器

pg_lo_read — 从大型对象中读入数据

pg_lo_seek — 移动大型对象中的指针

pg_lo_tell — 再次回到大型对象的日前线指挥部针地点

pg_lo_unlink — 删除贰个特大型对象

pg_lo_write — 向大型对象写入数据

pg_meta_data — 获得表的元数据

pg_num_fields — 重返字段的数额

pg_num_rows — 再次来到行的多少

pg_options — 得到和连接有关的选项

pg_parameter_status — Looks up a current parameter setting of the
server.

pg_pconnect — 打开2个持久的 PostgreSQL 连接

pg_ping — Ping 数据库连接

pg_port — 重临该连接的端口号

pg_prepare — Submits a request to create a prepared statement
with the given parameters, and waits for completion.

pg_put_line — 向 PostgreSQL 后端发送以 NULL
结尾的字符串

pg_query_params — Submits a command to the server and waits for the
result, with the ability to pass parameters separately from the SQL
command text.

pg_query — 执行查询

pg_result_error_field — Returns an individual field of an error
report.

pg_result_error — 得到查询结果的错误音信

pg_result_seek — 在结果财富中设定内部行偏移量

pg_result_status — 获得查询结果的场合

pg_select — 选取记录

pg_send_execute — Sends a request to execute a prepared statement
with given parameters, without waiting for the result(s).

pg_send_prepare — Sends a request to create a prepared statement with
the given parameters, without waiting for completion.

pg_send_query_params — Submits a command and separate parameters to the
server without waiting for the result(s).

pg_send_query — 发送异步查询

pg_set_client_encoding — 设定客户端编码

pg_set_error_verbosity — Determines the verbosity of messages returned
by pg_last_error() andpg_result_error().

pg_trace — 运营1个 PostgreSQL 连接的寻踪功效

相关文章