亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

PHP連接及操作PostgreSQL數據庫的方法詳解

2024-05-05 00:06:25
字體:
來源:轉載
供稿:網友

本文實例講述了PHP連接及操作PostgreSQL數據庫的方法。分享給大家供大家參考,具體如下:

PostgreSQL擴展在默認情況下在最新版本的PHP 5.3.x中是啟用的。 可以在編譯時使用--without-pgsql來禁用它。仍然可以使用yum命令來安裝PHP-PostgreSQL接口:

yum install php-pgsql

在開始使用PHP連接PostgreSQL接口之前,請先在PostgreSQL安裝目錄中找到pg_hba.conf文件,并添加以下行:

# IPv4 local connections:host  all     all     127.0.0.1/32     md5

您可以啟動/重新啟動postgres服務器,使用以下命令運行:

[root@host]# service postgresql restartStopping postgresql service:                [ OK ]Starting postgresql service:                [ OK ]

Windows用戶必須啟用php_pgsql.dll才能使用此擴展名。這個DLL包含在最新版本的PHP 5.3.x中的Windows發行版中。

PHP連接到PostgreSQL數據庫

以下PHP代碼顯示如何連接到本地機器上的現有數據庫,最后將返回數據庫連接對象。

<?php  $host    = "host=127.0.0.1";  $port    = "port=5432";  $dbname   = "dbname=testdb";  $credentials = "user=postgres password=pass123";  $db = pg_connect( "$host $port $dbname $credentials" );  if(!$db){   echo "Error : Unable to open database/n";  } else {   echo "Opened database successfully/n";  }?>

現在,讓我們運行上面的程序打開數據庫:testdb,如果成功打開數據庫連接,那么它將給出以下消息:

Opened database successfully

創建表

以下PHP程序將用于在之前創建的數據庫(testdb)中創建一個表:

<?php  $host    = "host=127.0.0.1";  $port    = "port=5432";  $dbname   = "dbname=testdb";  $credentials = "user=postgres password=pass123";  $db = pg_connect( "$host $port $dbname $credentials" );  if(!$db){   echo "Error : Unable to open database/n";  } else {   echo "Opened database successfully/n";  }  $sql =<<<EOF   CREATE TABLE COMPANY   (ID INT PRIMARY KEY   NOT NULL,   NAME      TEXT  NOT NULL,   AGE      INT   NOT NULL,   ADDRESS    CHAR(50),   SALARY     REAL);EOF;  $ret = pg_query($db, $sql);  if(!$ret){   echo pg_last_error($db);  } else {   echo "Table created successfully/n";  }  pg_close($db);?>

當執行上述程序時,它將在testdb數據庫中創建COMPANY表,并顯示以下消息:

Opened database successfully
Table created successfully

SQL

插入操作

以下PHP程序顯示了如何在上述示例中創建的COMPANY表中創建記錄:

<?php  $host    = "host=127.0.0.1";  $port    = "port=5432";  $dbname   = "dbname=testdb";  $credentials = "user=postgres password=pass123";  $db = pg_connect( "$host $port $dbname $credentials" );  if(!$db){   echo "Error : Unable to open database/n";  } else {   echo "Opened database successfully/n";  }  $sql =<<<EOF   INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)   VALUES (1, 'Paul', 32, 'California', 20000.00 );   INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)   VALUES (2, 'Allen', 25, 'Texas', 15000.00 );   INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)   VALUES (3, 'Teddy', 23, 'Norway', 20000.00 );   INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)   VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 );EOF;  $ret = pg_query($db, $sql);  if(!$ret){   echo pg_last_error($db);  } else {   echo "Records created successfully/n";  }  pg_close($db);?>

當執行上述程序時,它將在COMPANY表中創建給定的記錄,并顯示以下兩行:

Opened database successfully
Records created successfully

SELECT操作

以下PHP程序顯示了如何從上述示例中創建的COMPANY表中獲取和顯示記錄:

<?php  $host    = "host=127.0.0.1";  $port    = "port=5432";  $dbname   = "dbname=testdb";  $credentials = "user=postgres password=pass123";  $db = pg_connect( "$host $port $dbname $credentials" );  if(!$db){   echo "Error : Unable to open database/n";  } else {   echo "Opened database successfully/n";  }  $sql =<<<EOF   SELECT * from COMPANY;EOF;  $ret = pg_query($db, $sql);  if(!$ret){   echo pg_last_error($db);   exit;  }  while($row = pg_fetch_row($ret)){   echo "ID = ". $row[0] . "/n";   echo "NAME = ". $row[1] ."/n";   echo "ADDRESS = ". $row[2] ."/n";   echo "SALARY = ".$row[4] ."/n/n";  }  echo "Operation done successfully/n";  pg_close($db);?>

當執行上述程序時,將產生以下結果。 請記下,在創建表時按照它們使用的順序返回字段。

Opened database successfully
ID = 1
NAME = Paul
ADDRESS = California
SALARY =  20000
ID = 2
NAME = Allen
ADDRESS = Texas
SALARY =  15000
ID = 3
NAME = Teddy
ADDRESS = Norway
SALARY =  20000
ID = 4
NAME = Mark
ADDRESS = Rich-Mond
SALARY =  65000
Operation done successfully

更新操作

以下PHP代碼顯示了如何使用UPDATE語句來更新指定記錄,然后從COMPANY表中獲取并顯示更新的記錄:

<?php  $host    = "host=127.0.0.1";  $port    = "port=5432";  $dbname   = "dbname=testdb";  $credentials = "user=postgres password=pass123";  $db = pg_connect( "$host $port $dbname $credentials" );  if(!$db){   echo "Error : Unable to open database/n";  } else {   echo "Opened database successfully/n";  }  $sql =<<<EOF   UPDATE COMPANY set SALARY = 25000.00 where ID=1;EOF;  $ret = pg_query($db, $sql);  if(!$ret){   echo pg_last_error($db);   exit;  } else {   echo "Record updated successfully/n";  }  $sql =<<<EOF   SELECT * from COMPANY;EOF;  $ret = pg_query($db, $sql);  if(!$ret){   echo pg_last_error($db);   exit;  }  while($row = pg_fetch_row($ret)){   echo "ID = ". $row[0] . "/n";   echo "NAME = ". $row[1] ."/n";   echo "ADDRESS = ". $row[2] ."/n";   echo "SALARY = ".$row[4] ."/n/n";  }  echo "Operation done successfully/n";  pg_close($db);?>

執行上述程序時,會產生以下結果:

Opened database successfully
Record updated successfully
ID = 2
NAME = Allen
ADDRESS = 25
SALARY =  15000
ID = 3
NAME = Teddy
ADDRESS = 23
SALARY =  20000
ID = 4
NAME = Mark
ADDRESS = 25
SALARY =  65000
ID = 1
NAME = Paul
ADDRESS = 32
SALARY =  25000
Operation done successfully

刪除操作

以下PHP代碼顯示了如何使用DELETE語句刪除指定記錄,然后從COMPANY表中獲取并顯示剩余的記錄:

<?php  $host    = "host=127.0.0.1";  $port    = "port=5432";  $dbname   = "dbname=testdb";  $credentials = "user=postgres password=pass123";  $db = pg_connect( "$host $port $dbname $credentials" );  if(!$db){   echo "Error : Unable to open database/n";  } else {   echo "Opened database successfully/n";  }  $sql =<<<EOF   DELETE from COMPANY where ID=2;EOF;  $ret = pg_query($db, $sql);  if(!$ret){   echo pg_last_error($db);   exit;  } else {   echo "Record deleted successfully/n";  }  $sql =<<<EOF   SELECT * from COMPANY;EOF;  $ret = pg_query($db, $sql);  if(!$ret){   echo pg_last_error($db);   exit;  }  while($row = pg_fetch_row($ret)){   echo "ID = ". $row[0] . "/n";   echo "NAME = ". $row[1] ."/n";   echo "ADDRESS = ". $row[2] ."/n";   echo "SALARY = ".$row[4] ."/n/n";  }  echo "Operation done successfully/n";  pg_close($db);?>

執行上述程序時,會產生以下結果:

Opened database successfully
Record deleted successfully
ID = 3
NAME = Teddy
ADDRESS = 23
SALARY =  20000
ID = 4
NAME = Mark
ADDRESS = 25
SALARY =  65000
ID = 1
NAME = Paul
ADDRESS = 32
SALARY =  25000
Operation done successfully

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久成人综合视频| 久久人人看视频| 亚洲精品成人免费| 欧美成人一区二区三区电影| 国产精品一区av| 91美女片黄在线观看游戏| 97在线精品视频| 色偷偷91综合久久噜噜| 92福利视频午夜1000合集在线观看| 91精品免费看| 一区二区欧美日韩视频| 亚洲人成绝费网站色www| 日韩一级裸体免费视频| 91日韩在线视频| 91sa在线看| 国产z一区二区三区| 日韩视频免费在线| 亚洲男人的天堂在线| 亚洲综合视频1区| 在线视频中文亚洲| 57pao成人永久免费视频| 日韩欧美视频一区二区三区| 久久九九有精品国产23| 97在线观看视频国产| 久久久久久久久久久人体| 伊人久久久久久久久久久久久| 久久精品亚洲精品| 国产精品亚洲激情| 亚洲国产私拍精品国模在线观看| 久久精品久久久久久| 欧美激情免费视频| 亚洲jizzjizz日本少妇| 8090理伦午夜在线电影| 91日韩在线视频| 久久久久久久999精品视频| 国产精品无av码在线观看| 国产色婷婷国产综合在线理论片a| 久久久精品亚洲| 欧美精品亚州精品| 国产视频在线一区二区| 久久精品在线视频| 91久久嫩草影院一区二区| 91色在线视频| 久久精品99久久久久久久久| 国产成人精品久久亚洲高清不卡| 亚洲国产天堂久久综合| 日韩影视在线观看| 国产精品福利在线观看| 欧美国产激情18| 精品亚洲一区二区三区四区五区| 色综合久久悠悠| 欧美精品免费在线观看| 亚洲国产美女精品久久久久∴| 精品日韩中文字幕| 日韩视频免费中文字幕| 国产精品日韩欧美大师| 欧美日韩久久久久| 69久久夜色精品国产7777| 91av成人在线| 国产精品欧美久久久| 国产成人精品日本亚洲专区61| 亚洲天堂影视av| 国产最新精品视频| 8050国产精品久久久久久| 亚洲午夜未删减在线观看| 国产免费一区二区三区在线能观看| 国产亚洲欧美日韩精品| 久久久午夜视频| 91av在线网站| 欧美精品videossex88| 欧美做受高潮电影o| 亚洲欧美一区二区三区情侣bbw| 欧美激情成人在线视频| 日韩经典中文字幕在线观看| 26uuu亚洲国产精品| 中文字幕亚洲综合久久筱田步美| 日韩美女在线观看一区| 国产色婷婷国产综合在线理论片a| 在线观看日韩www视频免费| 热99精品里视频精品| 亚洲aⅴ男人的天堂在线观看| 国产精品网站大全| 欧美性xxxx极品hd欧美风情| 成人午夜黄色影院| 亚洲一区制服诱惑| 欧美一区二区三区……| 久久69精品久久久久久国产越南| 欧美国产日韩一区| 欧美成人免费小视频| 91精品久久久久久久久久| 91久久精品一区| 亚洲福利视频二区| 色一情一乱一区二区| 日韩免费视频在线观看| 精品国产一区二区三区久久狼黑人| 亚洲电影免费观看高清完整版在线| 亚洲黄色av网站| 国产午夜精品视频| 久久影视电视剧凤归四时歌| 欧美老女人在线视频| 欧美激情性做爰免费视频| 亚洲色图15p| 亚洲视频自拍偷拍| 福利视频一区二区| 中文字幕日韩精品在线| 亚洲精品欧美一区二区三区| 欧美精品xxx| 国产精品久久久久91| 欧美日韩精品在线| 欧美老女人性视频| 欧美日韩午夜视频在线观看| 91av成人在线| 国产第一区电影| 亚洲精品久久久久久久久久久久久| 国产综合福利在线| 国产91色在线| 亚洲精品久久久久久久久久久久| 九九精品视频在线观看| 日本不卡免费高清视频| 精品久久久久久中文字幕一区奶水| 欧美午夜美女看片| 国产精品大陆在线观看| 久久中文字幕视频| 欧美一区二区影院| 国产精品视频专区| 久久69精品久久久久久国产越南| 亚洲综合色av| 日韩高清欧美高清| 国产日韩精品在线观看| 欧美精品在线第一页| 色综合久久精品亚洲国产| 91久久国产精品91久久性色| 高跟丝袜欧美一区| 国产成人高清激情视频在线观看| 亚洲精品在线看| 日韩欧美国产视频| 精品久久久久久| 在线精品高清中文字幕| 永久免费精品影视网站| 成人国产在线视频| 欧美成在线观看| 日韩欧美精品网址| 亚洲欧美中文日韩在线v日本| 色噜噜亚洲精品中文字幕| 国产丝袜一区视频在线观看| 中文字幕无线精品亚洲乱码一区| 久久人人爽人人| 成人97在线观看视频| 最近2019年中文视频免费在线观看| 亚洲国产精品专区久久| 高清视频欧美一级| 欧美成人三级视频网站| 日韩欧美福利视频| 欧美精品午夜视频| www.日韩不卡电影av| 在线播放精品一区二区三区| 日韩精品中文字幕视频在线| 黄色成人在线播放| 亚洲国产精品一区二区三区| 亚洲伊人一本大道中文字幕| 精品视频—区二区三区免费| 亚洲精品在线91| 91亚洲午夜在线| 国产免费观看久久黄|