10bet网址
MySQL连接器/ODBC开发人员指南
相关的文档10bet官方网站 本手册下载

6.6使用连接器/ODBC和水晶报告

Crystal Reports可以使用ODBC DSN连接到数据库,从中提取用于报告目的的数据和信息。

请注意

Crystal Reports的某些版本存在一个已知的问题,应用程序无法通过ODBC连接打开和浏览表和字段。在使用水晶报告与MySQL,请确保您已经更新到最新版本,包括任何突出的服务包和补丁。有关此问题的更多信息,请参见业务)对象知识库为更多的信息。

  1. 创建DSN数据源(ODBC)工具。您可以指定一个完整的数据库,包括用户名和密码,也可以构建一个基本的DSN并使用Crystal Reports设置用户名和密码。

    对于本例的目的,已经创建了一个DSN,它提供到MySQL Sakila示例数据库实例的连接。

  2. 打开Crystal Reports并创建一个新项目,或者打开一个您想要从MySQL数据源插入数据的现有报告项目。

  3. 通过单击“开始页”上的选项,启动跨选项卡报告向导。扩大创建新的连接文件夹,然后展开ODBC (RDO)文件夹以获取ODBC数据源列表。

    系统将要求您选择一个数据源。

    图6.24跨标签报表创建向导

    内容在周围的文本中有描述。

  4. 当你第一次展开ODBC (RDO)文件夹就会出现数据源选择界面。从这里,您可以选择预配置的DSN、打开基于文件的DSN或输入手动连接字符串。对于本例,预配置的Sakila将使用DSN。

    如果DSN包含用户名/密码组合,或者希望使用不同的身份验证凭据,请单击下一个输入要使用的用户名和密码。否则,单击完成要继续执行数据源选择向导。

    图6.25 ODBC (RDO)数据源选择向导

    三个选项包括“选择数据源”,显示可选择的预配置数据源名称的列表,“查找文件DSN”,一个选择框选择文件,以及“输入连接字符串”,手动输入连接字符串。

  5. 您将返回跨选项卡报表创建向导。现在需要选择要包含在报表中的数据库和表。对于我们的示例,我们将展开所选的Sakila数据库。单击城市表,并使用>按钮,将表添加到报表中。然后重复这个动作国家表格或者,您可以选择多个表并将它们添加到报告中。

    最后,您可以选择父级Sakila资源和添加到报表中的表。

    选择要包含的表之后,单击下一个继续。

    图6.26带有ODBC (RDO)样例数据的跨选项卡报表创建向导

    内容在周围的文本中有描述。

  6. 水晶报告现在将读取表定义,并自动识别表之间的链接。表之间链接的标识使Crystal Reports能够根据您的查询自动查找和总结基于数据库中所有表的信息。如果Crystal Reports无法执行链接本身,您可以手动创建您所选择的表中字段之间的链接。

    点击下一个继续这个过程。

    图6.27跨标签报表创建向导:表链接

    示例显示了两个名为“city”和“country”的链接表。左窗格将两个表对象显示为带有列名的方框,用一行将表城市与国家连接起来。右边窗格包括“自动排列”、“按名称或键自动链接”、“订购链接”、“清除链接”、“删除链接”、“链接选项”和“索引图例”选项。

  7. 现在可以选择要包含在Cross-Tab报告中的列和行。的拖放或使用>按钮,用于向报表的每个区域添加字段。在所示的示例中,我们将报告按国家组织的城市,包含每个国家的城市数量。如果要浏览数据,请选择一个字段并单击浏览数据……按钮。

    点击下一个创建一个结果图表。由于我们没有根据该数据创建图表,请单击完成生成报告。

    图6.28跨标签报表创建向导:跨标签选择对话框

    内容在周围的文本中有描述。

  8. 将显示完成的报告,下面显示Sakila示例数据库的输出示例。

    图6.29跨标签报表创建向导:最终报表

    生成的最终报告示例包括三列,从左到右依次为:Country、City和Total。每个国家都包含一个相关的总数,所有国家的总数显示在最右边的列的顶部。

一旦在Crystal Reports中打开ODBC连接,就可以浏览并将可用表中的任何字段添加到报表中。