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


Posted in PHP onMarch 02, 2014

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 相关文章推荐
一个php作的文本留言本的例子(二)
Oct 09 PHP
加速XP搜索功能堪比vista
Mar 22 PHP
如何使用纯PHP实现定时器任务(Timer)
Jul 31 PHP
php 参数过滤、数据过滤详解
Oct 26 PHP
PHP 返回13位时间戳的实现代码
May 13 PHP
php实现背景图上添加圆形logo图标的方法
Nov 17 PHP
浅谈PHP的反射机制
Dec 15 PHP
浅谈php(codeigniter)安全性注意事项
Apr 06 PHP
PHP编程计算日期间隔天数的方法
Apr 26 PHP
PHP实现的下载远程文件类定义与用法示例
Jul 05 PHP
php对微信支付回调处理的方法
Aug 23 PHP
Laravel 登录后清空COOKIE的操作方法
Oct 14 PHP
php设计模式之命令模式使用示例
Mar 02 #PHP
php接口和抽象类使用示例详解
Mar 02 #PHP
php通过字符串调用函数示例
Mar 02 #PHP
php多维数组去掉重复值示例分享
Mar 02 #PHP
PHP 函数call_user_func和call_user_func_array用法详解
Mar 02 #PHP
PHP 字符串长度判断效率更高的方法
Mar 02 #PHP
PHP static局部静态变量和全局静态变量总结
Mar 02 #PHP
You might like
flash用php连接数据库的代码
2011/04/21 PHP
深入理解PHP原理之错误抑制与内嵌HTML分析
2011/05/02 PHP
PHP采集静态页面并把页面css,img,js保存的方法
2014/12/23 PHP
PHP实现二维数组中的查找算法小结
2018/06/09 PHP
php中html_entity_decode实现HTML实体转义
2018/06/13 PHP
PHP生成随机字符串实例代码(字母+数字)
2019/09/11 PHP
JQUERY 对象与DOM对象之两者相互间的转换
2009/04/27 Javascript
IE中radio 或checkbox的checked属性初始状态下不能选中显示问题
2009/07/25 Javascript
JavaScript 错误处理与调试经验总结
2010/08/10 Javascript
js String对象中常用方法小结(字符串操作)
2012/01/27 Javascript
JS获取URL中的参数数据
2013/12/05 Javascript
zeroclipboard 单个复制按钮和多个复制按钮的实现方法
2014/06/14 Javascript
JavaScript设计模式之代理模式介绍
2014/12/28 Javascript
同一个网页中实现多个JavaScript特效的方法
2015/02/02 Javascript
浅谈JSON.parse()和JSON.stringify()
2015/07/14 Javascript
纯JS实现本地图片预览的方法
2015/07/31 Javascript
JavaScript焦点事件、鼠标事件和滚轮事件使用详解
2016/01/15 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
2016/09/19 Javascript
微信小程序 scroll-view实现上拉加载与下拉刷新的实例
2017/01/21 Javascript
JS实现预加载视频音频/视频获取截图(返回canvas截图)
2017/10/09 Javascript
vue element-ui table表格滚动加载方法
2018/03/02 Javascript
深入理解JavaScript和TypeScript中的class
2018/04/22 Javascript
layui 弹出层回调获取弹出层数据的例子
2019/09/02 Javascript
bootstrapValidator表单校验、更改状态、新增、移除校验字段的实例代码
2020/05/19 Javascript
[01:09:40]Newbee vs Pain 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Golang与python线程详解及简单实例
2017/04/27 Python
Django REST Framework序列化外键获取外键的值方法
2019/07/26 Python
python使用SQLAlchemy操作MySQL
2020/01/02 Python
python实现拼接图片
2020/03/23 Python
Softmax函数原理及Python实现过程解析
2020/05/22 Python
HTML5和CSS3让网页设计提升到下一个高度
2009/08/14 HTML / CSS
CSS3系列教程:背景图片(背景大小和多背景图) 应用说明
2012/12/19 HTML / CSS
SQL注入攻击的种类有哪些
2013/12/30 面试题
2014年学校安全工作总结
2014/11/13 职场文书
2014年行政人事工作总结
2014/12/09 职场文书
优秀员工事迹材料
2014/12/20 职场文书