【问题标题】:MySQL insert Needed data only then send it to crystal reportMySQL 插入需要的数据,然后将其发送到水晶报表
【发布时间】:2014-07-13 23:29:20
【问题描述】:

我正在处理一个超过 200 个表的大型项目,我正在使用 MySQL(Percona)、Java 和 Crystal Report JRC。 我有一些报告很大,并且在多个表之间有很多连接。 在 Java 客户端中,我通常会在我的框架上显示数据,在某些情况下我需要打印这些数据,所以我将唯一 ID 发送到 Crystal Report 以查询相同的数据并打印它。

一些报告变得非常缓慢,然后我想到了创建一个仅用于打印的表格的想法。 例子: 如果我想打印它,我在我的 Frame 上查看了收据凭证,所以我在打印台上插入所有需要的数据,然后将唯一 ID 发送到水晶报表并打印。

此打印表将每 48 小时释放一次,因此数据将保持较小,从而使报告打印速度更快。

注意:Original Receipt 表将保存数百万条记录,应保持实时状态,因为这是一项要求。

但打印台将仅用于打印。

所以,请帮助我确定这是否是我可以用数百万条记录提高水晶报表性能的最佳方法。

【问题讨论】:

    标签: java mysql crystal-reports percona


    【解决方案1】:

    如果您需要打印的数据已经在您的 java 应用程序中被查询,那么让它创建一个仅包含我询问的数据的临时表,并在 Crystal Reports 中查询该临时表。例如,

    CREATE TEMPORARY TABLE IF NOT EXISTS print_data AS (SELECT * FROM table)

    否则,我建议在https://dba.stackexchange.com/ 中提出这个问题,这比 Crystal Reports 更关乎数据库设计和性能,如果您在通过(尽管很复杂)连接结构传递单个唯一 ID 时遇到 CR 速度变慢,那么要么有严重的性能调整机会,要么您的硬件和/或 MySQL 已经无法满足您的需求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多