Drupal7中常用的數(shù)據(jù)庫操作實例
更新時間:2014年03月02日 14:40:15 作者:
Drupal 7 提供的新功能其中一個就是可以使用 Query Builder and Query Objects 查詢生成器來構(gòu)造查詢對象的能力,無需在代碼中寫原始的SQL語句,一是提高了代碼可閱讀性,二是兼容所有數(shù)據(jù)庫
1.插入單條記錄
復(fù)制代碼 代碼如下:
db_insert("table")->fields(array('field1' => 'value1', 'field2' => 'value2', 'fieldn' => $valuen))->execute();
2.插入多條記錄
復(fù)制代碼 代碼如下:
$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();
$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.更新某條記錄
復(fù)制代碼 代碼如下:
db_update('imports')
->condition('name', 'Chico')
->fields(array('address' => 'Go West St.'))
->execute();
//等同于:
->condition('name', 'Chico')
->fields(array('address' => 'Go West St.'))
->execute();
//等同于:
UPDATE {imports} SET address = 'Go West St.' WHERE name = 'Chico';
4.刪除某條記錄
復(fù)制代碼 代碼如下:
db_delete('imports')
->condition('name' => 'Zeppo')
->execute();
->condition('name' => 'Zeppo')
->execute();
5.合并記錄
復(fù)制代碼 代碼如下:
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的記錄。
->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.對數(shù)據(jù)庫某字段值自動加一或者自增。
復(fù)制代碼 代碼如下:
db_update('example_table')
->expression('count', 'count + 1')
->condition('field1', $some_value)
->expression('field2', 'field2 + :inc', array(':inc' => 2))
->execute();
->expression('count', 'count + 1')
->condition('field1', $some_value)
->expression('field2', 'field2 + :inc', array(':inc' => 2))
->execute();
7.查詢數(shù)據(jù)庫某字段為另一別名(alias)
復(fù)制代碼 代碼如下:
$query = db_select('node', 'n');
$query->addField('n', 'name', 'label');
$query->addField('n', 'name', 'value');
$query->addField('n', 'name', 'label');
$query->addField('n', 'name', 'value');
您可能感興趣的文章:
- js讀取被點擊次數(shù)的簡單實例(從數(shù)據(jù)庫中讀取)
- sql server 2008數(shù)據(jù)庫連接字符串大全
- 上傳圖片后使用數(shù)據(jù)庫保存圖片的示例分享
- openfiledialog讀取txt寫入數(shù)據(jù)庫示例
- sql2000數(shù)據(jù)庫清除重復(fù)數(shù)據(jù)的二種方法
- linux數(shù)據(jù)庫備份并通過ftp上傳腳本分享
- java使用jdbc操作數(shù)據(jù)庫示例分享
- MySQL數(shù)據(jù)庫命名規(guī)范及約定
- net操作access數(shù)據(jù)庫示例分享
- mysql跨數(shù)據(jù)庫復(fù)制表(在同一IP地址中)示例
- Drupal7連接多個數(shù)據(jù)庫及常見問題解決
- Drupal讀取Excel并導(dǎo)入數(shù)據(jù)庫實例
- sqlserver備份還原數(shù)據(jù)庫功能封裝分享
- android通過jxl讀excel存入sqlite3數(shù)據(jù)庫
- java自定義動態(tài)鏈接數(shù)據(jù)庫示例
- php把session寫入數(shù)據(jù)庫示例
- 在linux中導(dǎo)入sql文件的方法分享(使用命令行轉(zhuǎn)移mysql數(shù)據(jù)庫)
- 四種數(shù)據(jù)庫隨機獲取10條數(shù)據(jù)的方法
相關(guān)文章
為PHP安裝imagick時出現(xiàn)Cannot locate header file MagickWand.h錯誤的解決方
這篇文章主要介紹了為PHP安裝imagick時出現(xiàn)Cannot locate header file MagickWand.h錯誤的解決方法,需要的朋友可以參考下2014-11-11laravel 解決groupBy時出現(xiàn)的錯誤 isn''t in Group By問題
今天小編就為大家分享一篇laravel 解決groupBy時出現(xiàn)的錯誤 isn't in Group By問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10