Drupal7中常用的数据库操作实例

2015-01-24信息快讯网

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

Php连接及读取和写入mysql数据库的常用代码
PHP中Fatal error session_start()错误解决步骤
php中单个数据库字段多列显示(单字段分页、横向输出)
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
CodeIgniter框架数据库事务处理的设计缺陷和解决方案
destoon数据库表说明汇总
PHP+Mysql树型结构(无限分类)数据库设计的2种方式实例
php中的四舍五入函数代码(floor函数、ceil函数、round与intval)
PHP关于htmlspecialchars、strip_tags、addslashes的解释
php中eval函数的危害与正确禁用方法
使用ThinkPHP+Uploadify实现图片上传功能
Codeigniter上传图片出现“You did not select a file to upload”错误解决办法
让codeigniter与swfupload整合的最佳解决方案
PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁
ThinkPHP使用心得分享-上传类UploadFile的使用
Drupal7 form表单二次开发要点与实例
php设计模式之命令模式使用示例
PHP 函数call_user_func和call_user_func_array用法详解
php把session写入数据库示例
php操作mysql数据库的基本类代码
php实现mysql数据库操作类分享
thinkphp3查询mssql数据库乱码解决方法分享
更改localhost为其他名字的方法
preg_match_all使用心得分享
基于preg_match_all采集后数据处理的一点心得笔记(编码转换和正则匹配)
php读取纯真ip数据库使用示例
php Calender(日历)代码分享
is_uploaded_file函数引发的不能上传文件问题
PHP swfupload图片上传的实例代码
©2014-2024 dbsqp.com