QlikView - 数据库连接

QlikView 可以连接到大多数流行的数据库,如 MySQL、SQL Server、Oracle、Postgress 等。它可以将数据和表结构提取到 QlikView 环境中,并将结果存储在其内存中以供进一步分析。连接到这些数据库的步骤包括使用 DSN 创建 ODBC 连接,然后使用此 DSN 提取数据。

在本教程中,我们将连接到 MySQL 数据库。本教程假设您有一个可用的 MySQL 环境。按照以下步骤为 MySQL 创建 ODBC DSN(数据源名称)− 创建 DSN。 将 DSN 命名为 mysqluserdsn,或者如果您已经为 MySql 创建了 DSN,您可能更愿意使用现有的 DSN。

连接到数据库

在本章中,我们将使用名为 sakila 的 MySql 内置数据库。我们创建一个新的 QlikView 文档并打开脚本编辑器(按 Control+E)。在 Data 选项卡下,我们找到名为 Database 的部分。从下拉列表中选择 ODBC,然后单击 Connect。将打开以下窗口。选择名为 mysqluserdns 的 DSN,然后单击 Test Connection。应显示消息 连接测试成功

 database_file_connect

验证与数据库的连接

成功连接后,将出现以下屏幕,显示脚本编辑器主窗口中与数据库的连接。

database_connected

选择数据库表

单击上述窗口中的 选择 以获取表和列的列表。由于我们已使用 sakila 作为默认数据库创建了 DSN,因此我们从该数据库中获取了表和列的列表。我们可以从数据库下拉列表中选择另一个数据库,如下面的屏幕截图所示。在本章中,我们将继续使用 sakila 数据库。

database_select_table

表格加载器脚本

单击上述窗口中的"确定"后,我们将返回主脚本编辑器,其中显示使用名为 actor 的表格的脚本。

database_table_script

在 qvd 文件中显示结果

现在,需要永久存储加载到 QlikView 文档中的数据,以便进一步分析。为此,我们将编辑脚本以将数据存储为 qvd 文件的形式。按 Control+E 打开编辑脚本窗口并编写以下代码。

在代码中,我们为列赋予适当的名称,并在加载语句上方提及表名称。此外,我们给出了生成的 qvd 文件的存储路径。将此文件另存为 QV_mysql.qvw

datbase_to_qvd

使用 qvd 文件

qvd 文件可以加载到主文档中,并用于创建图形和表格以供进一步分析。按 Control+R 重新加载 QV_mysql.qvw 文件,然后单击图表向导中的 下一步。选择要创建的垂直表,以actor_id、first_name、last_name为维度,以actor_id的计数为表达式。出现如下图所示的图表。

database_chart