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');