0

我最近安装了 Crystal 报表 2011 版本 14.0.2.364 RTM。我正在连接到使用 MySQL ODBC 3.51 驱动程序创建 DSN 的 MySQL 数据库。我可以使用单个表或右连接创建报表,但是,当我尝试使用左连接创建报表时,Crystal 冻结并且我必须强制程序退出。

MySQL 服务器上的超时设置设置为 30 分钟,因此这似乎不是问题。使用 Microsoft SQL Server Management Studio 并访问与链接服务器相同的数据库,查询需要 1 分 18 秒才能返回 1,380,993 行。

当 SQL 查询执行良好时,我无法弄清楚为什么 Crystal 无法执行查询/返回结果。如果您需要任何进一步的信息,请告诉我。

水晶查询

 SELECT `applications1`.`id`, `application_statuses1`.`status`
 FROM   `js_reporting`.`applications` `applications1`
  LEFT OUTER JOIN `js_reporting`.`application_statuses` `application_statuses1` ON `applications1`.`id`=`application_statuses1`.`application_id`

SQL 服务器中的相同查询

select applications.id, application_statuses.status
from mysql_js...applications
 left join mysql_js...application_statuses on applications.id=application_statuses.application_id
4

2 回答 2

1

这个问题主要是由于缺乏索引(感谢亚历克亨德森提出这个问题)。此外,我们的开发人员已经将我们的一个表拆分为两个单独的表,因此数据库在没有两个拆分表和后续链接表之间的链接表的情况下努力处理这个问题。

于 2013-09-16T21:20:34.067 回答
0

Crystal 需要时间来打印 1 000 000 条记录。您可能会遇到内存问题。创建包含如此多记录的报告的原因是什么 - 这实际上是无用的。

于 2013-08-20T00:29:21.740 回答