本文实例讲述了PHP操作Postgresql封装类与应用。分享给大家供大家参考,具体如下:

这个类封装了一些常用的函数,原帖里面还有事务处理的内容,以后再学习吧。

类文件定义:

class pgsql {

private $linkid; // PostgreSQL连接标识符

private $host; // PostgreSQL服务器主机

private $port; // PostgreSQL服务器主机端口

private $user; // PostgreSQL用户

private $passwd; // PostgreSQL密码

private $db; // Postgresql数据库

private $result; // 查询的结果

private $querycount; // 已执行的查询总数

/* 类构造函数,用来初始化$host、$user、$passwd和$db字段。 */

function __construct($host, $port ,$db, $user, $passwd) {

$this->host = $host;

$this->port = $port;

$this->user = $user;

$this->passwd = $passwd;

$this->db = $db;

}

/* 连接Postgresql数据库 */

function connect(){

try{

$this->linkid = @pg_connect("host=$this->host port=$this->port dbname=$this->db

user=$this->user password=$this->passwd");

if (! $this->linkid)

throw new Exception("Could not connect to PostgreSQL server.");

}

catch (Exception $e) {

die($e->getMessage());

}

}

/* 执行数据库查询。 */

function query($query){

try{

$this->result = @pg_query($this->linkid,$query);

if(! $this->result)

throw new Exception("The database query failed.");

}

catch (Exception $e){

echo $e->getMessage();

}

$this->querycount++;

return $this->result;

}

/* 确定受查询所影响的行的总计。 */

function affectedRows(){

$count = @pg_affected_rows($this->linkid);

return $count;

}

/* 确定查询返回的行的总计。 */

function numRows(){

$count = @pg_num_rows($this->result);

return $count;

}

/* 将查询的结果行作为一个对象返回。 */

function fetchObject(){

$row = @pg_fetch_object($this->result);

return $row;

}

/* 将查询的结果行作为一个索引数组返回。 */

function fetchRow(){

$row = @pg_fetch_row($this->result);

return $row;

}

/* 将查询的结果行作为一个关联数组返回。 */

function fetchArray(){

$row = @pg_fetch_array($this->result);

return $row;

}

/* 返回在这个对象的生存期内执行的查询总数。这不是必须的,但是您也许会感兴趣。 */

function numQueries(){

return $this->querycount;

}

}

?>

测试的php一并放出,另外测试了下局域网内的另一台postgresql服务器,感觉查询速度还是很快的,查询postgregis数据也是杠杠滴。

include 'PGDB.php';

$PG = new pgsql("192.168.1.167", "5432", "postgis", "postgres", "post");

$PG->connect();

if(!$PG)

{

$db_error = "无法连接到PostGreSQL数据库!";

echo $db_error;

}

else

{

echo "成功连接!";

$query = "select name from ex where gid = 2";

$result = $PG->query($query);

$row = $PG->fetchRow();

echo $row[0];

}

?>

希望本文所述对大家PHP程序设计有所帮助。

php postgresql多条,PHP操作Postgresql封装类与应用完整实例相关推荐

  1. python 操作 postgresql 数据库

    目录 一 简介 历史 描述 特征 函数 索引 触发器 多版本并发控制 规则 数据类型 用户定义对象 二 数据库连接 2.1 安装 psycopg2 2.2 连接数据库 三 创建表 四 插入操作 4.1 ...

  2. psycopg2 mysql_使用psycopg2操作PostgreSQL数据库之二

    使用psycopg2操作PostgreSQL数据库之二 佣工7001 1. 连接数据库: import psycopg2 import psycopg2.extras conn = psycopg2. ...

  3. 使用psycopg2操作PostgreSQL数据库之二

    使用psycopg2操作PostgreSQL数据库之二 佣工7001 1. 连接数据库: import psycopg2import psycopg2.extrasconn = psycopg2.co ...

  4. golang操作postgresql数据库jsonb类型

    golang操作postgresql数据库jsonb类型 本文以案例为主,少言,自悟. 推荐一个测试sql的网站 SQL操作 // 创建一个带有jsonb列的表 CREATE TABLE items ...

  5. php如何连接postgresql,php如何连接和操作PostgreSQL数据库

    这篇文章主要介绍了php连接与操作PostgreSQL数据库的方法,以实例形式较为详细的分析了php连接PostgreSQL数据库以及进行读取与增加.修改.删除等技巧,具有一定的参考借鉴价值,需要的朋 ...

  6. PostgreSQL - 数据库与表格操作

    PostgreSQL 数据库与表格操作 1. 创建数据库 1.1 CREATE DATABASE 创建数据库 1.2 createdb 命令创建数据库 2. 选择数据库 3. 删除数据库 3.1 DR ...

  7. php postgresql多条,PHPPostgreSQL函数列表 - phpStudy

    echo $r["fun"].' '.$r["title"]; ?> PostgreSQL函数列表 pg_close - 关闭一个 PostgreSQL ...

  8. 使用PostgREST的RestAPI操作PostgreSQL数据库教程

    使用PostgREST的RestAPI操作PostgreSQL数据库教程 表和视图 公开的架构中的所有视图和表均可被查询的活动数据库角色访问,并且可供活动数据库角色访问.它们暴露在一级深度路线中.例如 ...

  9. Go语言sqlx库操作PostgreSQL数据库增删改查

    0. 引用 sqlx地址:https://github.com/jmoiron/sqlx PostgreSQL官网:https://www.postgresql.org/ 1. PostgreSQL安 ...

最新文章

  1. 云计算技术都要学什么?教你分清公有云、私有云和混合云
  2. wxWidgets学习 (2) -- 事件处理
  3. mysql组合索引的命中情况
  4. java调用webservice几种方式
  5. RHEL5.8安装Oracle10g
  6. 计算机网络之Web应用
  7. PowerDesigner里面将表中name列值拷贝到comment列
  8. 关于投篮的数学建模模型_数学建模 投篮命中率的数学模型
  9. 判断字符串解析是JsonObject或者JsonArray
  10. 百倍性能的PL/SQL优化案例(r11笔记第13天)
  11. python输入数字输出中文_go格式“占位符”, 输入输出,类似python的input
  12. C#网络编程之 UDP编程
  13. python函数调用时所提供的参数可以是常量_如何使用mock作为函数参数在Python中修补常量...
  14. 金庸的武侠世界和SAP的江湖
  15. LG 的数学计划 ---- 第四步 快速幂
  16. Udacity Self-Driving数据集介绍
  17. 简单盘点游戏开发引擎
  18. 操作系统——如何求磁盘的物理地址
  19. python - RSA加密
  20. 计算机上找不到e.f盘怎么班,windows 10使用过程中突然找不到E盘了

热门文章

  1. SharePoint 2007 Features
  2. 存储过程同函数的区别
  3. testNG的DataProvider返回IteratorObject[]的妙用
  4. ceph monitor----paxos算法1
  5. Signalr实时通讯
  6. [学习笔记]树上莫队
  7. j2ee gradle构建
  8. OCR识别-python版(一)
  9. python 调用shell或windows命令
  10. Windows phone 8 学习笔记(5) 图块与通知