Questions tagged «database»

Drupal提供了一个标准的,与供应商无关的抽象层,用于访问数据库服务器。


5
打印使用db_select()构建的查询
我想以编程方式打印使用db_select()构建的查询。Drupal抽象层提供任何API函数吗? 它类似于Views中的查询输出,但是我想从我的自定义模块中打印它以进行调试。
61 7  database 

7
db_select()中的“ OR”条件
我正在研究新的数据库层,很高兴将其更改为OOP层。我需要使用实现查询db_select()。我发现我可以使用添加一条WHERE语句$query->condition(),但是默认情况下条件是AND在一起的。 我如何才能将条件或在一起? $query=db_select('users','u')->fields('u',array('uid','title','created','uid')); $query->join('flag_content','fc' , 'u.uid = fc.content_id'); $query->condition('fc.fid', '5' , '='); $query->condition('fc.uid', $uid , '='); //…
51 7  database 

7
如何更改字段设置的长度?
我曾经为网站设置了一个字段的最大限制。现在,客户希望在该字段中添加更多字符。 我无法从Drupal更改最大大小,因为我收到以下错误消息: 数据库中有此字段的数据。字段设置不能再更改。 但是,必须有一个解决方案。我是否应该在数据库中更改它(该字段是由Field-collections模块实现的)?
46 7  entities  database 

3
如何合并从网站的开发副本到实时网站的更改而又不丢失新内容?
将站点的开发副本上的工作合并到实时生产副本中的最佳过程是什么?自从开始开发最新功能以来,通常会在网站上添加很多新内容。而且,网站的大多数新增内容都会涉及数据库更改。因此,复制任何新文件都很容易,但是数据库呢?如何将更改与现有生产数据库合并,而又不丢失自上次更新生产站点以来添加的新内容?是否有任何模块对此有所帮助?

11
哪些表格可以清除?
我无缘无故继承了一个客户端站点,该站点具有非常大的数据库。内容量适中,启用的模块很少。但是,数据库太大,无法轻松移动,因此我想清除它。 我已经清除了标准的缓存表,系统日志和访问日志。 我可以在标准Drupal站点中安全截断其他表格吗?
40 database 

4
EntityFieldQuery的正确用法是什么?
在Drupal 7中,不赞成node_load_multiple()使用using $conditions参数指定API文档,而推荐使用using EntityFieldQuery。如何使用该类来生成供其使用的节点ID列表node_load_multiple()?还有其他用例吗?
37 7  database 

5
在db_query中使用IN子句
我不知道如何使用占位符在查询中添加IN子句。 我希望它是这样的: $nids = array(1, 2, 3); $result = db_query('SELECT * FROM {node} WHERE nid IN :nids', array(':nids' => $nids)); 找不到有关此简单任务的任何文档。实现此目的的正确方法是什么?
35 7  database 


8
如何使用db_query()仅获得一个结果
我正在从使用mysql_fetch_array()等的“老派” PHP MySQL方法过渡,并且我通过在模块中使用数据库API尝试变得更加Drupally。 我只想返回并打印出一个值。例如: $query = db_query("SELECT zip FROM {zipcodes} WHERE city = :city LIMIT 1", array(":city" => $city)); 我知道其中存在值,我可以使用数据库API之外的传统方法来访问和打印它。 print $query->zip 不管用。 API文档非常清晰。 有人可以告诉我访问这些值的正确方法吗? 有没有人可以推荐的好教程?
28 7  database 

5
如何在查询中使用“不输入”?
使用条件语句编写包含“ NOT IN”的查询的正确方法是什么? 我的查询如下: SELECT DISTINCT nid FROM node WHERE language NOT IN (SELECT language FROM languages WHERE language = 'ab'); 我已经尝试过以下方法: $query->condition('n.' . $key, $value, 'not in (select language from languages where language = $value)');
26 7  database 

5
结合使用OR和EntityFieldQuery
在今天之前,我从未需要执行此操作,但是您似乎不能使用进行OR查询EntityFieldQuery,因为db_or它用于选择查询。 一个示例将涉及具有日期字段(该字段的值为空或今天之后)的所有实体。 我是否缺少某些东西或技巧,或者根本不支持此方法?

3
数据库常规错误:2006 MySQL服务器已消失
最近,无论什么类型,每次尝试添加内容时,我都开始出错。这是浏览器中显示的错误: 处理异常时引发的其他未捕获异常。 原始PDOException:SQLSTATE [HY000]:常规错误:2006 MySQL服务器已消失:从{comment} WHERE status =:status;中选择COUNT(cid); comment_count_unpublished()中的数组([:status] => 0)(/ Applications / MAMP / htdocs / modules / comment / comment.module的第313行)。 额外 PDOException:SQLSTATE [HY000]:常规错误:2006 MySQL服务器已消失:INSERT INTO {watchdog}(uid,类型,消息,变量,严重性,链接,位置,引用,主机名,时间戳)VALUES(:db_insert_placeholder_0,:db_insert_placeholder_1 ,:db_insert_placeholder_2,:db_insert_placeholder_3,:db_insert_placeholder_4,:db_insert_placeholder_5,:db_insert_placeholder_6,:db_insert_placeholder_7,:db_insert_placeholder_8,:db_insert_placeholder_9); 数组([:db_insert_placeholder_0] => 1 [:db_insert_placeholder_1] => php [:db_insert_placeholder_2] =>%type:!%function中的消息(%file的%line行)。[:db_insert_placeholder_3] => a:6:{ s:5:“%type”; s:12:“ PDOException”; s:8:“!message”; s:154:“ SQLSTATE [HY000]:常规错误:2006 MySQL服务器消失了:从{comment} WHERE status =:status;中选择COUNT(cid);数组([:status] …
24 database 

4
视图中的自定义查询?
在某个时候,我发现有必要修改由Views生成的SQL查询,最后我覆盖views_pre_execute并更改了该特定View的查询。 这对我来说就像一个丑陋的骇客,我想知道是否有一种更优雅,更可维护的方式来做到这一点。理想的方法是允许我直接从Views UI修改查询。
24 views  database 

5
获取视图执行的实际查询
我需要找出由某个查询执行的SQL查询。在配置视图时,“视图”模块可以显示SQL,但显然查询不是在所有情况下都可以运行的实际查询。 我知道Devel模块可以显示数据库查询,但是devel无法显示实际查询,除非在每个查询中单击关联的“ A”链接,并且有数百个查询。 我如何找出视图执行的实际查询?该视图显示为块。
23 7  views  database 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.