我想從Drupal 7模塊連接到數據庫。目前,我只有我想運行的是查詢:如何從Drupal 7模塊連接到數據庫?
$query = db_select('z_lists)
->fields('country')
->condition('value', $country, '=')
->execute()
->fetchAssoc();
我無法弄清楚是如何建立與缺省數據庫的連接。
任何幫助?
我想從Drupal 7模塊連接到數據庫。目前,我只有我想運行的是查詢:如何從Drupal 7模塊連接到數據庫?
$query = db_select('z_lists)
->fields('country')
->condition('value', $country, '=')
->execute()
->fetchAssoc();
我無法弄清楚是如何建立與缺省數據庫的連接。
任何幫助?
在Drupal7中有稱爲db_query()的函數。您可以使用該功能來運行您的查詢。 您可以使用下面了Syntex
$var1 = 1;
$result = db_query('SELECT n.title FROM {node} n WHERE n.uid = :uid', array(':uid' => $var1));
$結果將是stdClass的對象,所以你可以在foreach循環使用它。
op的示例代碼唯一的問題是濫用db_select和缺少單引號。
動態查詢:https://drupal.org/node/310075
這本來是很好,如果你只是用這個來代替:
$query = db_select('z_lists','z')
->fields('z')
->condition('value', $country, '=')
->execute()
->fetchAssoc();
這將返回所有字段的匹配結果。
鏈接到末尾的 - > fetchAssoc()將確保您只收到第一個匹配的記錄。如果您希望多個結果,你會離開關 - > fetchAssoc(),並通過結果只用循環:
foreach($query as $result){
... do something with the data here ...
}
但是,爲了回答實際問的問題,你會自動連接到默認數據庫。在對站點數據庫運行任何查詢之前,不需要聲明任何類型的數據庫連接。
如果您嘗試連接到另一個問題的外部數據庫。
不要將您的問題交叉發佈到多個網站:http://drupal.stackexchange.com/questions/4650/how-do-i-connect-to-the-database-from-a-module/4653 #4653 – Berdir 2011-06-04 17:27:07