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中使用Sockets 从Usenet中获取文件
Jan 10 PHP
php连接mysql数据库代码
Mar 10 PHP
Blitz templates 最快的PHP模板引擎
Apr 06 PHP
支持中文的php加密解密类代码
Nov 27 PHP
web站点获取用户IP的安全方法 HTTP_X_FORWARDED_FOR检验
Jun 01 PHP
生成随机字符串和验证码的类的PHP实例
Dec 24 PHP
PHP.vs.JAVA
Apr 29 PHP
如何使用PHP给图片加水印
Oct 12 PHP
php  PATH_SEPARATOR判断当前服务器系统类型实例
Oct 28 PHP
php简单构造json多维数组的方法示例
Jun 08 PHP
PHP给源代码加密的几种方法汇总(推荐)
Feb 06 PHP
php实现构建排除当前元素的乘积数组方法
Oct 06 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
一个可查询所有表的“通用”查询分页类
2006/10/09 PHP
PHP配置心得包含MYSQL5乱码解决
2006/11/20 PHP
安装APACHE
2007/01/15 PHP
PHP获取当前文件所在目录 getcwd()函数
2009/05/13 PHP
PHP基于单例模式实现的mysql类
2016/01/09 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
2020/02/23 PHP
javascript笔试题目附答案@20081025_jb51.net
2008/10/26 Javascript
Exitjs获取DataView中图片文件名
2009/11/26 Javascript
JavaScript 异步方法队列链实现代码分析
2010/06/05 Javascript
Document对象内容集合(比较全)
2010/09/06 Javascript
关于JavaScript与HTML的交互事件
2013/04/12 Javascript
jquery js 获取时间差、时间格式具体代码
2013/06/05 Javascript
关于Javascript 对象(object)的prototype
2014/05/09 Javascript
DOM节点的替换或修改函数replaceChild()用法实例
2015/01/12 Javascript
jquery实现对联广告的方法
2015/02/05 Javascript
EasyUI实现二级页面的内容勾选的方法
2015/03/01 Javascript
js数组去重的5种算法实现
2015/11/04 Javascript
微信小程序sessionid不一致问题解决
2019/08/30 Javascript
[46:42]DOTA2-DPC中国联赛正赛 Aster vs Magma BO3 第二场 3月5日
2021/03/11 DOTA
Python读写Excel文件方法介绍
2014/11/22 Python
Python实现爬虫爬取NBA数据功能示例
2018/05/28 Python
详解Python如何生成词云的方法
2018/06/01 Python
python 实现selenium断言和验证的方法
2019/02/13 Python
基于python-opencv3的图像显示和保存操作
2019/06/27 Python
python sorted函数的小练习及解答
2019/09/18 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
2020/04/10 Python
python 绘制场景热力图的示例
2020/09/23 Python
python 获取计算机的网卡信息
2021/02/18 Python
浅析canvas元素的html尺寸和css尺寸对元素视觉的影响
2019/07/22 HTML / CSS
波兰化妆品和护肤品购物网站:eKobieca
2019/08/30 全球购物
如何在存储过程中使用Loop
2016/01/05 面试题
绩效工资分配方案
2014/01/18 职场文书
学校安全工作汇报材料
2014/08/16 职场文书
校外活动方案
2014/08/28 职场文书
2015年财务部工作总结
2015/04/10 职场文书
浅析python中特殊文件和特殊函数
2022/02/24 Python