Drupal7系统,重写了数据库操作内核,其强大的功能无需多言。一次偶然的机会,需要提取Drupal默认安装数据库之外的一个数据库中的数据
,可谓是绞尽脑汁,上网查阅最后终于找到了一个笨而又合适的方法。
打开settings.php表,找到以下代码部分,添加数据库连接信息
$databases = array (
'default' =>
array (
'default' =>
array (
'database' => 'main',
'username' => 'root',
'password' => '123456',
'host' => 'localhost',
'port' => '',
'driver' => 'mysql',
'prefix' => '',
),
),
连接其他数据库
'china_led' =>
array(
'default' =>
array(
'database' => 'china-led',
'username' => 'root',
'password' => '123456',
'host' => 'localhost',
'port' => '',
'driver' => 'mysql',
'prefix' => '',
),
),
);
然后在module中选择数据库,可以读取数据了
//选择要连接的数据库
db_set_active('china_led');
$cc = db_select('node', 'n')
->fields('n')
->execute();
foreach ($cc as $c){
dsm($c);
}
//选择默认数据库,很重要
db_set_active('default');