萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> Drupal7中常用的數據庫操作實例

Drupal7中常用的數據庫操作實例

 Drupal 7 提供的新功能其中一個就是可以使用 Query Builder and Query Objects 查詢生成器來構造查詢對象的能力,無需在代碼中寫原始的SQL語句,一是提高了代碼可閱讀性,二是兼容所有數據庫

1.插入單條記錄   代碼如下:db_insert("table")->fields(array('field1' => 'value1', 'field2' => 'value2', 'fieldn' => $valuen))->execute();   2.插入多條記錄    代碼如下:$values[] = array('field1' => 'val1', 'field2' => 'val2', 'fieldn' => $valn); $values[] = array('field1' => 'value1', 'field2' => 'value2', 'fieldn' => $valuen); $query = db_insert(‘table')->fields(array('field1', 'field2', 'fieldn')); foreach ($values as $record) {    $query->values($record); } $query->execute();   3.更新某條記錄 代碼如下:db_update('imports')    ->condition('name', 'Chico')    ->fields(array('address' => 'Go West St.'))    ->execute(); //等同於:   UPDATE {imports} SET address = 'Go West St.' WHERE name = 'Chico';   4.刪除某條記錄    代碼如下:db_delete('imports')    ->condition('name' => 'Zeppo')    ->execute(); 5.合並記錄    代碼如下:db_merge('people')   ->key(array('job' => 'Speaker'))   ->insertFields(array('age' => 31,'name' => 'Meredith'))   ->updateFields(array('name' => 'Tiffany'))   ->execute(); //如果存在job為Speaker的一條記錄,則更新name為Tiffany,如果不存在,就插入一條age為31,name為Meredith,job為Speaker的記錄。     6.對數據庫某字段值自動加一或者自增。   代碼如下:db_update('example_table')   ->expression('count', 'count + 1')   ->condition('field1', $some_value)   ->expression('field2', 'field2 + :inc', array(':inc' => 2))   ->execute();   7.查詢數據庫某字段為另一別名(alias)    代碼如下:$query = db_select('node', 'n'); $query->addField('n', 'name', 'label'); $query->addField('n', 'name', 'value');  
copyright © 萬盛學電腦網 all rights reserved