PHP 编程/PostgreSQL
外观
< PHP 编程
PostgreSQL 是另一个你可以与 PHP 一起使用的流行数据库。
如果你已经熟悉如何在 PHP 中与 MySQL 交互,那么下面的图表应该可以让 PostgreSQL 的转换变得更容易。
- 连接:mysql_connect() 接受三个参数(服务器、用户名、密码),而 pg_connect() 接受单个连接字符串参数。
- mysql_connect() 示例:$db = mysql_connect('localhost', 'mysql_user', 'mysql_pass');
- pg_connect() 示例:$db = pg_connect('host=localhost user=pg_user password=pg_pass dbname=my_database');
- 数据库选择:在 MySQL 中,你必须单独指定要连接的数据库名称,而在 PostgreSQL 中,它被内置到 pg_connect() 的连接字符串中。
- 查询:mysql_query() 和 pg_query() 的行为相同。
- mysql_query() 示例:$grab_people = mysql_query("SELECT * FROM people WHERE id_num = 3761832");
- pg_query() 示例:$grab_people = pg_query("SELECT * FROM people WHERE id_num = 3761832");
- 获取关联结果:mysql_fetch_assoc() 和 pg_fetch_assoc() 的行为相同。
- mysql_fetch_assoc() 示例:$person = mysql_fetch_assoc($grab_people);
- pg_fetch_assoc() 示例:$person = pg_fetch_assoc($grab_people);
- 获取错误:虽然 MySQL 使用 mysql_error(),但 PostgreSQL 使用 pg_last_error().
- mysql_error() 示例:$error = mysql_error();
- pg_last_error() 示例:$error = pg_last_error();
- 关闭数据库连接:mysql_close() 和 pg_close() 的行为相同。
- mysql_close 示例:mysql_close($db);
- pg_close 示例:pg_close($db);
- 释放结果:mysql_free_result() 和 pg_free_result() 的行为相同。
- mysql_free_result() 示例:mysql_free_result($grab_people);
- pg_free_result() 示例:pg_free_result($grab_people);
$db = mysql_connect('localhost', 'mysql_user', 'mysql_pass');
$grab_people = mysql_query("SELECT * FROM people WHERE id_num = 3761832");
$person = mysql_fetch_assoc($grab_people);
print_r($person);
$error = mysql_error();
if($error != ) { print $error; }
mysql_free_result($grab_people);
mysql_close($db);
$db = pg_connect('host=localhost user=pg_user password=pg_pass dbname=my_database');
$grab_people = pg_query("SELECT * FROM people WHERE id_num = 3761832");
$person = pg_fetch_assoc($grab_people);
print_r($person);
print pg_last_error();
pg_free_result($grab_people);
pg_close($db);