热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PostGreSQL数据库常用操作方法

1.pg_close(关闭数据库链接)语法:booleanpg_close(intconnection)说明:本函数冠以与PostGresql服务器的连接2.pg_cmdtuples(获取SQL命令所影响的函数)语法:intpd_cmdtuples(intresult_id)说明:本函数用于获取postgresdeSQ

1.pg_close(关闭数据库链接)
语法:boolean pg_close(int connection)
说明:本函数冠以与PostGresql服务器的连接

2.pg_cmdtuples(获取SQL命令所影响的函数)
语法:int pd_cmdtuples(int result_id)
说明:本函数用于获取postgresde SQL命令所影响的数据行数,这些命令包括INSERT,Update,Delete。如果没有数据,则返回0.
例子
$result=pg_exec($conn,"INSERT INTO book VALUES('author')");
$cmdtuples=pg_cmdtuples($result);

3.pg_connect(连接数据库)
语法:int pg_connect(string [host],string [port],string [options],string [tty],string [database])
说明:本函数打开与Postgresql服务器的连接。参数host为服务器名称、port为连接端口号、options为可选项,tty为终端名称、database为数据库名称,如果连接成功,函数返回连接代码,否则返回false

4.pg_dbname(获取当前数据库名称)
语法:string pg_dbname(int connection)

5.pg_errormessage(返回错误信息)
语法:string pg_errormessage(int connection)
说明:用于获取postgresql数据库的错误信息

6.pg_exec(执行查询命令)
语法:int pg_exec(int connection,string query)
说明:本函数用于执行由query指定的查询命令,参数connection为连接代码,参数query为要执行的命令。

7.pg_fetch_array(返回数组数据)
语法:array pg_fetch_array(int result,int row)
说明:本函数用来将查询结果拆分到数组变量中。如果没有数据,则返回false。参数result为使用pg_exec所返回的代码值,参数row为行数
例子:
$cOnn=pg_connect("","","","","publisher");
if(!$conn){
echo "错误,无法连接";
exit;}
$result=pg_Exec($conn,"SELECT * FROM book");
if(!$result){
echo "错误,无法查询";
exit;}
$arr=pg_fetch_array($result,0);
echo $arr[0]." $arr=pg_fetch_array($result,1);
echo $arr["author"]."

8.pg_fetch_object(返回对象结果)
语法:object pg_fetch_object(int result,int row)
说明:本函数用来将查询结果拆分到对象变量中,如果result没有数据,则返回false,参数$result为pg_Exec
返回的代码值,参数row为行数
例子:
$database="book";
$db_cOnn=pg_connect("localhost","5432","","",$database);
if(!$db_conn): ?>
无法连接
exit;
endif;
$query=pg_exec($db_conn,"SELECT * FROM book BY author");
$row=0;
while($data=pg_fetch_object($query,$row));
echo $data>author.echo $data.title;
$$row++;
endwhile;?>

Postgres 数据库是由柏克莱大学电脑科学系所开发的数据库系统,为类关联式数据库的先驱。它提供 SQL92/SQL3 语法。PostgreSQL 是公开使用的免费系统。    在 phpWizard.net 网站上也有用 Browser 管理 PostgreSQL 的套装程序 PostgresAdmin 。可以用它来轻松管理 PostgreSQL 数据库。
    在公元 1998 年的 PostgreSQL 6.3 版之后,可以使用 UNIX 上的 domain sockets。postmaster 加上参数 -i 就可以使用,PostgreSQL 系统会用到 /tmp/.s.PGSQL.5432 的文件。
    下面为使用 LOB (Large Object) 的例子
$database = pg_Connect ( "" , "" , "" , "" , "jacarta" );
pg_exec ( $database , "begin" );
$oid = pg_locreate ( $database );
echo ( "$oid n " );
$handle = pg_loopen ( $database , $oid , "w" );
echo ( "$handle n " );
pg_lowrite ( $handle , "gaga" );
pg_loclose ( $handle );
pg_exec ( $database , "commit" )
pg_exec ( $database , "end" )
?> pg_Close: 关闭 PostgreSQL 服务器连接。
pg_cmdTuples: 取得被 SQL 指令影响的资料笔数。
pg_Connect: 打开 PostgreSQL 服务器连接。
pg_DBname: 取得目前的数据库名称。
pg_ErrorMessage: 返回错误信息。
pg_Exec: 执行 query 指令。
pg_Fetch_Array: 返回数组资料。
pg_Fetch_Object: 返回类资料。
pg_Fetch_Row: 返回单列的各字段。
pg_FieldIsNull: 检查字段是否有资料。
pg_FieldName: 返回指定字段的名称。
pg_FieldNum: 取得指定字段的行数。
pg_FieldPrtLen: 计算可列示的长度。
pg_FieldSize: 计算指定字段的长度。
pg_FieldType: 获得目前字段的类型。
pg_FreeResult: 释放返回占用内存。
pg_GetLastOid: 取得最后的类代码。
pg_Host: 取得连接机器名称。
pg_loclose: 关闭大型类。
pg_locreate: 建立大型类。
pg_loopen: 打开大型类。
pg_loread: 读取大型类。
pg_loreadall: 读取大型类并输出。
pg_lounlink: 删除大型类。
pg_lowrite: 读取大型类。
pg_NumFields: 取得返回字段的数目。
pg_NumRows: 取得返回列的数目。
pg_Options: 取得连接机器选项。
pg_pConnect: 打开 PostgreSQL 服务器持续连接。
pg_Port: 取得连接机器埠号。
pg_Result: 取得查询 (query) 的结果。
pg_tty: 取得连接机器终端机。
pg_Close
关闭 PostgreSQL 服务器连接。
语法: boolean pg_close(int connection);
返回值: 布尔值
函数种类: 数据库功能
内容说明: 本函数关闭与 PostgreSQL 服务器的连接。参数 connection 为连接代码。成功返回 true、失败返回 false 值。
pg_cmdTuples
取得被 SQL 指令影响的资料笔数。
语法: int pg_cmdtuples(int result_id);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数用来取得 PostgreSQL 的 SQL 指令所影响的资料笔数,这些 query 指令包括 INSERT、UPDATE 与 DELETE 等。返回值为影响的笔数,若没有资料受影响则返回 0。
使用范例
本例为部份的程序
$result = pg_exec($conn, "INSERT INTO verlag VALUES ('Autor')");
$cmdtuples = pg_cmdtuples($result);
echo $cmdtuples." 笔资料受影响n";
?>
pg_Connect
打开 PostgreSQL 服务器连接。
语法: int pg_connect(string [host], string [port], string [options], string [tty], string database);
返回值: 整数
函数种类: 数据库功能
内容说明
本函数打开与 PostgreSQL 服务器的连接。参数 host 表服务器名称。参数 port 为连接埠。参数 options 为选项。参数 tty 为终端机。参数 database 为数据库名。成功返回连接代号、失败返回 false 值。
使用范例
pg_connect("dbname=testdb user=wilson password=haha port=5433");
// 以下略
?>
参考: pg_pConnect()
pg_DBname
取得目前的数据库名称。
语法: string pg_dbname(int connection);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数用来取得 PostgreSQL 目前使用的数据库 (database) 名称。参数 connection 为连接代码。
pg_ErrorMessage
返回错误信息。
语法: string pg_errormessage(int connection);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数可以取得 PostgreSQL 服务器的错误信息。参数 connection 为连接代码。
pg_Exec
执行 query 指令。
语法: int pg_exec(int connection, string query);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数用来执行指定的 query 指令。参数 connection 为连接代码。参数 query 为欲执行的指令。
pg_Fetch_Array
返回数组资料。
语法: array pg_fetch_array(int result, int row);
返回值: 数组
函数种类: 数据库功能
内容说明: 本函数用来将查询结果 result 拆到数组变量中。若 result 没有资料,则返回 false 值。参数 result 为使用 pg_Exec() 所返回的代码值。参数 row 为列数。
使用范例
$cOnn= pg_pconnect("","","","","publisher");
if (!$conn) {
echo "错误, 无法连接n";
exit;
}
$result = pg_Exec($conn, "SELECT * FROM authors");
if (!$result) {
echo "错误, 无法查询n";
exit;
}
$arr = pg_fetch_array($result, 0);
echo $arr[0]."
$arr = pg_fetch_array ($result, 1);
echo $arr["author"] . "
?>
pg_Fetch_Object
返回类资料。
语法: object pg_fetch_object(int result, int row);
返回值: 类
函数种类: 数据库功能
内容说明: 本函数用来将查询结果 result 拆到类变量中。若 result 没有资料,则返回 false 值。参数 result 为使用 pg_Exec() 所返回的代码值。参数 row 为列数。
使用范例
$database = "verlag";
$db_cOnn= pg_connect("localhost", "5432", "", "", $database);
if (!$db_conn): ?>
无法连上 echo $database ?> 数据库
exit;
endif;$qu = pg_exec ($db_conn, "SELECT * FROM verlag ORDER BY autor");
$row = 0;
while ($data = pg_fetch_object ($qu, $row)):
echo $data->autor." (";
echo $data->jahr ."): ";
echo $data->titel."";
$row++;
endwhile; ?>
$fields[] = Array("autor", "Author");
$fields[] = Array("jahr", " Year");
$fields[] = Array("titel", " Title");
$row = 0;
while ($data = pg_fetch_object($qu, $row)):
echo "n";
reset ($fields);
while (list (,$item) = each($fields)):
echo $item[1].": ".$data->$item[0]."n";
endwhile;
$row++;
endwhile;
echo ""; ?>
pg_freeResult($qu);
pg_close($db_conn);
?>
pg_Fetch_Row
返回单列的各字段。
语法: array pg_fetch_row(int result, int row);
返回值: 数组
函数种类: 数据库功能
内容说明: 本函数用来将查询结果 result 之单列拆到数组变量中。数组的索引是数字索引,第一个的索引值是 0。若 result 没有资料,则返回 false 值。参数 row 表列数。
使用范例
$cOnn= pg_pconnect("","","","","publisher");
if (!$conn) {
echo "连接失败n";
exit;
}
$result = pg_Exec($conn, "SELECT * FROM authors");
if (!$result) {
echo "查询失败n";
exit;
}
$row = pg_fetch_row($result, 0);
echo $row[0] . "
$row = pg_fetch_row($result, 1);
echo $row[0] . "
echo $row[1] . "
?>
参考: pg_Fetch_Array() pg_Fetch_Object() pg_Result()
pg_FieldIsNull
检查字段是否有资料。
语法: int pg_fieldisnull(int result, int row, mixed field);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数可检查指定的字段是否有资料。参数 result 为查询结果代码。参数 row 为指定列数,第一个的索引值是 0。参数 field 为指定的字段。返回 0 表示有资料,返回 1 表示无资料 (Null)。
pg_FieldName
返回指定字段的名称。
语法: string pg_fieldname(int result, int field);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数用来取得指定字段的名称。参数 result 为查询结果代码。参数 field 为指定的字段,第一栏为 0。
pg_FieldNum
取得指定字段的行数。
语法: int pg_fieldnum(int result, mixed field);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数用来取得指定字段的行数。参数 result 为查询结果代码。参数 field 为指定的字段,第一栏为 0。若有错误则返回 -1 值。
pg_FieldPrtLen
计算可列示的长度。
语法: int pg_fieldprtlen(int result, int row, mixed field);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数用来取得指定字段的可列示字符长度。参数 result 为查询结果代码。参数 row 表指定的列。参数 field 为指定的字段,第一栏为 0。若有错误则返回 -1 值。
pg_FieldSize
计算指定字段的长度。
语法: int pg_fieldsize(int result, mixed field);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数用来取得指定字段的长度 (位组)。参数 result 为查询结果代码。参数 field 为指定的字段,第一栏为 0。若有错误则返回 -1 值。
pg_FieldType
获得目前字段的类型。
语法: string pg_fieldtype(int result, mixed field);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数可以得到目前所在字段的类型格式。返回的字符串为字段的类型,包括了 int、real、string....等等。参数 result 为查询结果代码。参数 field 为指定的字段,第一栏为 0。若有错误则返回 -1 值。
pg_FreeResult
释放返回占用内存。
语法: boolean pg_freeresult(int result);
返回值: 布尔值
函数种类: 数据库功能
内容说明: 本函数可以释放目前 PostgreSQL 数据库 query 返回所占用的内存。一般只有在非常担心在内存的使用上可能会不足的情形下才会用本函数。PHP 程序会在结束时自动释放。参数 result 为查询结果代码。
pg_GetLastOid
取得最后的类代码。
语法: int pg_getlastoid(int result);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数获取最后的类代码,类是由 pg_Exec() 所执行的 INSERT SQL 指令产生的。参数 result 为查询结果代码。若不是由 pg_Exec() 的 INSERT 产生类,则会产生错误,返回 -1 值。
pg_Host
取得连接机器名称。
语法: string pg_host(int connection);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数用来取得目前连接中的 PostgreSQL 服务器名称。参数 connection 为连接代码。
pg_loclose
关闭大型类。
语法: void pg_loclose(int fd);
返回值: 无
函数种类: 数据库功能
内容说明: 本函数用来关闭大型类 (Inversion Large Object)。参数 fd 是由 pg_loopen() 所打开的文件代码。
pg_locreate
建立大型类。
语法: int pg_locreate(int connection);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数用来建立大型类 (Inversion Large Object)。参数 connection 为连接代码。PostgreSQL 数据库的存取模式只有 INV_READ、INV_WRITE 二种,INV_ARCHIVE 已经从 PostgreSQL 6.3 之后的版本移除。返回值为类代码。
pg_loopen
打开大型类。
语法: int pg_loopen(int connection, int objoid, string mode);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数用来打开大型类 (Inversion Large Object)。参数 connection 为连接代码。参数 objoid 为类代码。参数 mode 的值有只读 (r)、只写 (w) 及可读写 (rw) 等三种。返回值为文件代码。
pg_loread
读取大型类。
语法: string pg_loread(int fd, int len);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数用来读取大型类 (Inversion Large Object)。参数 fd 为类的文件代码。参数 len 为欲读取的最大长度。
pg_loreadall
读取大型类并输出。
语法: void pg_loreadall(int fd);
返回值: 无
函数种类: 数据库功能
内容说明: 本函数用来读取大型类 (Inversion Large Object),并将结果输出到标准输出设备中。参数 fd 为类的文件代码。
pg_lounlink
删除大型类。
语法: void pg_lounlink(int connection, int lobjid);
返回值: 无
函数种类: 数据库功能
内容说明: 本函数用来删除大型类 (Inversion Large Object)。参数 connection 为连接代码。参数 objoid 为类代码。
pg_lowrite
读取大型类。
语法: int pg_lowrite(int fd, string buf);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数用来写入大型类 (Inversion Large Object)。参数 fd 为类的文件代码。参数 buf 为欲写入类的字符串。若有错误则返回 false 值,正确则返回写入字符串的位组 (byte) 数。
pg_NumFields
取得返回字段的数目。
语法: int pg_numfields(int result);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数可以得到返回字段的数目。参数 result 为 PostgreSQL 服务器执行 query 的返回代码。若有错误则返回 -1。
pg_NumRows
取得返回列的数目。
语法: int pg_numrows(int result);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数可以得到返回列的数目。参数 result 为 PostgreSQL 服务器执行 query 的返回代码。若有错误则返回 -1。
pg_Options
取得连接机器选项。
语法: string pg_options(int connection);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数用来取得目前连接中 PostgreSQL 服务器的选项。参数 connection 为连接代码。
pg_pConnect
打开 PostgreSQL 服务器持续连接。
语法: int pg_pconnect(string [host], string [port], string [options], string [tty], string database);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数打开与 PostgreSQL 服务器的持续连接。参数 host 表服务器名称。参数 port 为连接埠。参数 options 为选项。参数 tty 为终端机。参数 database 为数据库名。成功返回连接代号、失败返回 false 值。本函数和 pg_Connect() 不同的地方在于使用本函数打开数据库时,程序会先寻找是否曾经执行过本函数,若执行过则返回先前执行的 ID。此外程序结束后并不会关闭连接,而是等下次程序使用。
参考: pg_Connect()
pg_Port
取得连接机器埠号。
语法: int pg_port(int connection);
返回值: 整数
函数种类: 数据库功能
内容说明: 本函数用来取得目前连接中 PostgreSQL 服务器的埠号。参数 connection 为连接代码。
pg_Result
取得查询 (query) 的结果。
语法: mixed pg_result(int result, int row, mixed field);
返回值: 混合类型资料
函数种类: 数据库功能
内容说明: 本函数取得一格 query 的结果。参数 field 可以是字段名称、顺序或者是 FieldName.TableName 的格式。
pg_tty
取得连接机器终端机。
语法: string pg_tty(int connection);
返回值: 字符串
函数种类: 数据库功能
内容说明: 本函数用来取得目前连接中 PostgreSQL 服务器的终端机名称,供调试等使用。参数 connection 为连接代码。
推荐阅读
  • 本文详细探讨了在Web开发中常见的UTF-8编码问题及其解决方案,包括HTML页面、PHP脚本、MySQL数据库以及JavaScript和Flash应用中的乱码问题。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 从CodeIgniter中提取图像处理组件
    本指南旨在帮助开发者在未使用CodeIgniter框架的情况下,如何独立使用其强大的图像处理功能,包括图像尺寸调整、创建缩略图、裁剪、旋转及添加水印等。 ... [详细]
  • 本文详细介绍了如何在Oracle VM VirtualBox中实现主机与虚拟机之间的数据交换,包括安装Guest Additions增强功能,以及如何利用这些功能进行文件传输、屏幕调整等操作。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • 解决PHP项目在服务器无法抓取远程网页内容的问题
    本文探讨了在使用PHP进行后端开发时,遇到的一个常见问题:即在本地环境中能够正常通过CURL获取远程网页内容,但在服务器上却无法实现。我们将分析可能的原因并提供解决方案。 ... [详细]
  • Web动态服务器Python基本实现
    Web动态服务器Python基本实现 ... [详细]
  • 深入理解:AJAX学习指南
    本文详细探讨了AJAX的基本概念、工作原理及其在现代Web开发中的应用,旨在为初学者提供全面的学习资料。 ... [详细]
  • empty,isset首先都会检查变量是否存在,然后对变量值进行检测。而is_null只是直接检查变量值,是否为null,因此如果变量未定义就会出现错误!检测一个变量是否是null ... [详细]
  • 本文详细介绍了如何在ARM架构的目标设备上部署SSH服务端,包括必要的软件包下载、交叉编译过程以及最终的服务配置与测试。适合嵌入式开发人员和系统集成工程师参考。 ... [详细]
  • 本文介绍了如何在两个Oracle数据库(假设为数据库A和数据库B)之间设置DBLink,以便能够从数据库A中直接访问和操作数据库B中的数据。文章详细描述了创建DBLink前的必要准备步骤以及具体的创建方法。 ... [详细]
  • HTML前端开发:UINavigationController与页面间数据传递详解
    本文详细介绍了如何在HTML前端开发中利用UINavigationController进行页面管理和数据传递,适合初学者和有一定基础的开发者学习。 ... [详细]
  • 本文档介绍了如何使用ESP32开发板在STA模式下实现与TCP服务器的通信,包括环境搭建、代码解析及实验步骤。 ... [详细]
author-avatar
胜利者416
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有