Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Adodb使用php和PostgreSQL_Php_Mysql_Sql_Postgresql_Adodb - Fatal编程技术网

Adodb使用php和PostgreSQL

Adodb使用php和PostgreSQL,php,mysql,sql,postgresql,adodb,Php,Mysql,Sql,Postgresql,Adodb,我有一个数据库名TestDB,下面有一个名为User的表。 上面的TestDB数据库和用户表都是在mysql和postgres中创建的 我已经编写了以下代码。它适用于mysql,而不适用于postgres /*下面的代码将输出显示为带有currentuser key value属性的数组/这是如果我们直接执行@postgres提示符,它将给出当前用户查询结果/而不是位于Testdb*内的实际表*/ php代码 include('adodb/adodb.inc.php');

我有一个数据库名TestDB,下面有一个名为User的表。 上面的TestDB数据库和用户表都是在mysql和postgres中创建的

我已经编写了以下代码。它适用于mysql,而不适用于postgres

/*下面的代码将输出显示为带有currentuser key value属性的数组/这是如果我们直接执行@postgres提示符,它将给出当前用户查询结果/而不是位于Testdb*内的实际表*/

php代码

     include('adodb/adodb.inc.php');

     $db = ADONewConnection("mysql"); # eg 'mysql' or 'postgres'

     $db->debug = true;

     $db->Connect(localhost, "mysql", "mysql123","TestDB");

     $rs = $db->Execute('select * from User');

     print "<pre>";

     print_r($rs->GetRows());

     print "</pre>";

     $db1 = ADONewConnection("postgres"); # eg 'mysql' or 'postgres'

     $db1->debug = true;

     $db->Connect(localhost, "postgres", "postgres123","TestDB");

     $rs = $db->Execute('select * from User');

     print "<pre>";

     print_r($rs->GetRows());

     print "</pre>";
请建议我怎么做。

正如所回答的,PostgreSQL默认使用小写字符,而列和表名区分大小写

连接PostgreSQL后,您可以尝试以下操作:


我想你已经发布了两次相同的代码片段了?好吧。成功了。但在这种情况下,我不能为mysql和postgressql编写单一代码。它是?如何解决这个问题?在列和表名中只能使用小写字母。现在我只对数据库、表名和列使用小写字母。但它并没有显示相应的用户表,这总是很棘手的。相反,你是否考虑使用某种ORM库,如?还是一个完整的框架?是的,它现在正在工作。我用小写字母重新创建了所有数据库名称、表和列名。
$rs = $db->Execute('select * from "User"');