如何使用drupal直接操作postgres数据库? 20

我想用drupal直接操作Postgres数据库,将postgres数据库中的数据表直接在drupal中显示出来,最好能在drupal的一个视图中显示数据库的表,怎样使用... 我想用drupal直接操作Postgres数据库,将postgres数据库中的数据表直接在drupal中显示出来,最好能在drupal的一个视图中显示数据库的表,怎样使用schema来实现这一点? 展开
 我来答
晰美酒窝
2015-05-22 · TA获得超过6733个赞
知道大有可为答主
回答量:4544
采纳率:27%
帮助的人:1664万
展开全部
Drupal是主流的CMS系统之一。因此具备Drupal技能的开发人员有很多。

考虑这样的情况,如果你有一个现有的非Drupal系统,然后有一个Drupal开发团队,你希望这个Drupal团队帮你扩展应用。

那么这个时候,Drupal应用就应该设计成是支持多数据库的。

在Drupal中使用多数据,也很简单。

1、首先在配置文件(Settings.php)中把默认的数据库配置项改成数组形式:

<?php
$db_url['default'] = 'mysql://drupal:drupal@localhost/drupal';
$db_url['jigo'] = 'mysql://user:pwd@localhost/jigo';
?>

注意这里的数据库格式必须是一样的。即不能一个是mysql,另外一个是pgsql。
而且默认的必须是drupal自己的数据库。

2、然后在程序中动态切换:
<?php
global $db_url; // 数据库链接的内部变量
if (!is_array($db_url)) {
$default_db = $db_url;
$db_url = array('default' => $default_db);
}
//也可以动态设置新的数据库,这里注释掉,因为我们已经写在配置项中
//$db_url['jigo'] = 'mysql://user:pwd@localhost/jigo';

db_set_active('jigo'); // activation & execution same as explained above
$results = db_query($sql); //sql represents the query to be executed
db_set_active('default'); // set back to original
?>
regards,
iefreer
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式