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