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

  次阅读 作者:智能小宝 来源:互联网 2016-03-01 13:48 我要评论(0)

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

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...