Database 为什么不使用db_查询?(drupal数据库层)
drupal数据库层api介绍了db_查询 请勿将此函数用于插入、更新或删除查询。这些应该分别通过db_insert()、db_update()和db_delete()处理。Database 为什么不使用db_查询?(drupal数据库层),database,drupal,Database,Drupal,drupal数据库层api介绍了db_查询 请勿将此函数用于插入、更新或删除查询。这些应该分别通过db_insert()、db_update()和db_delete()处理。 我认为其他数据库层也是如此。有人知道为什么吗?是否不安全、效率低下等 据我所知,这只是惯例。当然,通过db_query()运行INSERT/UPDATE不会有任何技术问题;它所做的只是对数据库运行一个普通的SQL查询,所以它肯定会工作 我可以想象文档只是指出,这些操作有专用的函数,这些函数应该优先于直接运行SQLINSE
我认为其他数据库层也是如此。有人知道为什么吗?是否不安全、效率低下等 据我所知,这只是惯例。当然,通过
db_query()
运行INSERT
/UPDATE
不会有任何技术问题;它所做的只是对数据库运行一个普通的SQL查询,所以它肯定会工作
我可以想象文档只是指出,这些操作有专用的函数,这些函数应该优先于直接运行SQLINSERT
等
“结构化”查询(即那些使用
db\u select()
、db\u insert()
、db\u update()
和db\u merge()
)的查询还可以在执行之前运行,这意味着系统的其他部分可以根据需要修改它们。在使用db\u query()
时,您不会获得相同的功能。据我所知,这只是惯例。当然,通过db_query()
运行INSERT
/UPDATE
不会有任何技术问题;它所做的只是对数据库运行一个普通的SQL查询,所以它肯定会工作
我可以想象文档只是指出,这些操作有专用的函数,这些函数应该优先于直接运行SQLINSERT
等
“结构化”查询(即那些使用db\u select()
、db\u insert()
、db\u update()
和db\u merge()
)的查询还可以在执行之前运行,这意味着系统的其他部分可以根据需要修改它们。使用db\u query()
时,您无法获得相同的功能