PHP:将MySQL翻译成Postgresql

时间:2016-04-05 02:12:28

标签: php mysql postgresql

我需要将PHP中的以下MySQL语句翻译成Postgresql

Config.php文件

的MySQL

/usr/local/Cellar/apache-spark/1.6.1/libexec/python/lib/py4j-0.9-src.zip
/usr/local/Cellar/apache-spark/1.6.1/libexec/python/lib/pyspark.zip

我试过:(Postgresql)

$mysqli = new mysqli($db_host, $db_username, $db_password, $db_name);

MySQL的:

$db = pg_connect($db_host, $db_username, $db_password, $db_name);

我试过:(Postgresql)我不知道我是否需要真正改变任何东西,我只是更改变量的名称,因为它在我的config.php文件中有所不同

$get_total_rows = 0;
$results = $mysqli->query("SELECT COUNT(*) FROM menu");

if($results){
$get_total_rows = $results->fetch_row(); 
}
//break total records into pages
$total_groups= ceil($get_total_rows[0]/$items_per_group);

的MySQL

$get_total_rows = 0;
$results = $db->query("SELECT COUNT(*) FROM menu");

if($results){
$get_total_rows = $results->fetch_row(); 
}
//break total records into pages
$total_groups= ceil($get_total_rows[0]/$items_per_group);

不知道如何将其放入Postgresql

非常感谢

1 个答案:

答案 0 :(得分:1)

MySQL和Postgres都使用SQL方言,因此许多MySQL查询都可以使用,但Postgres比MySQL更严格和一致。但是,没有自动方式进行此转换。事实上,通过查看代码,看起来这些查询也应该在Postgres中运行。从长远来看,您可能需要考虑使用ORM来简化这些类型的迁移。

我建议在进行更改之前为所有查询工作实施单元测试。这样,当您切换到Postgres时,可以确保正确的结果。