Drupal模块开发

DRUPAL8模块开发 - DRUPAL8数据库API - 函数和操作

Drupal8的数据库层不提供SQL函数的跨数据库抽象。对于支持的数据库引擎的可移植性,各位Drupal开发者的代码应该只使用已知的ANSI标准的一部分,并支持Drupal8支持的所有数据库。下面是一个仍然不完整的列表。这里推荐使用的表单,因为其他语法变体可能对所有数据库都不起作用

DRUPAL8模块开发 - DRUPAL8数据库API - Expressions

Drupal8查询语句创建器支持在字段中使用expressions, 比如“所有的名字字段的数量”。请注意,许多表达式可以使用SQL函数,并不是所有SQL函数都在所有数据库中都是标准化的。只有模块开发人员才能确保只使用跨数据库兼容的表达式。

DRUPAL8模块开发 - DRUPAL8数据库API - 关于Drupal8动态查询的介绍

1、关于Drupal8动态查询的介绍;动态查询指的是由Drupal8动态生成的查询,而不是作为显式查询字符串提供的查询。
所有的插入、更新、删除、合并语句都必需是动态查询,选择语句可以是动态查询或者静态查询,隐藏,动态查询通常关联动态的选择查询。
注意:在90%的选择查询例子中,你科选择静态查询,如果从性能优先的角度考虑,你应该使用query()而不是select();

DRUPAL8模块开发 - DRUPAL8数据库API - 静态查询

Drupal8中最常见的选择查询是使用连接对象或db_query()或者函数的query()方法进行静态查询。静态查询几乎逐字传递给数据库。

DRUPAL8模块开发 - DRUPAL8数据库API - 数据库配置

DRUPAL8数据库API - 数据库配置,Drupal8 定义数据库连接的主要方法是通过settings.pgp中的$database数组。顾名思义,$databases允许定义多个数据库连接。它还支持多个目标的定义。connection key(连接密钥)是给定数据库连接的唯一标识符。对于一个确定的站点,connection key(连接密钥)必须是唯一的,并且必须始终存在“默认”的连接,这将是主要的Drupal8数据库。在大多数站点上,它将是唯一定义的连接。一个确定的connection key (连接密钥)必须有一个或者多个目标。目标是可以使用的数据库,如果可用的话。必须为每个connection key(连接密钥)定义一个“缺省”目标。如果未定义请求的目标,系统将悄然退回到“默认”。

DRUPAL8模块开发 - Drupal8数据库api - 实例化连接对象

Drupal8数据库api - 实例化连接对象Drupal8数据库交互应该通过连接对象来完成。实例化连接对象的最佳方法是通过服务容器。这将导致连接对象被配置为连接到settings.php中的数据库配置中定义的默认主数据库。

联系我们

提供基于Drupal的门户网站、电子商务网站、移动应用开发及托管服务

长按加微信
长风云微信
长按关注公众号
长风云公众号