Drupal 数据库接口(Database API)db_query() 静态查询

进行 Web 开发时,连接数据库进行增删改查的操作是必不可少的。在 Drupal 中,开发人员使用数据库抽象层提供的接口与数据库进行交互,而不直接操作数据库。(进行 Drupal 内核 API 的开发时除外)

使用数据库抽象层的主要意义有以下几点:

  • 一次编写,多处运行。使开发人员开发的模块无需修改代码便可支持多种数据库(如 MySQL, MariaDB, PostgreSQL, SQLite)
  • 允许开发人员更方便地进行复杂功能,如数据库的事务处理
  • 接口结构化,方便构造动态请求或修改请求
  • 进行安全检查,防御多种SQL攻击
  • 维护统一的代码规范和风格

Drupal 数据库接口 db_query()

在 Drupal 中,可以使用 db_query(), db_select() 执行查询操作,以及使用db_insert(), db_update(), db_delete() 执行插入、修改和删除操作。

对于非常简单的 SELECT 请求,可以使用 db_query() 函数,复杂的请求则应该使用 db_select()

注意:不要使用 db_query() 运行 INSERT, UPDATE 和 DELETE 请求,而应该使用对应的 db_insert(), db_update() 和 db_delete() 函数。

$query = db_query("SELECT nid, title FROM {node}");

SQL语句中的大括号用于标识表名(如 {node}),如果安装时设置了表前缀,系统会自动进行替换,从而方便多个 Drupal 安装在同一数据库中,

剩余50%内容付费后可查看
* 提交阅读码查看付费内容 忘记阅读码?
看完了?还不过瘾?点此向作者提问
打赏一下,鼓励Ta创作更多好内容!