# 创建 Direct Query 应用程序

当您创建一个新的 Qlik Sense 分析应用程序时，您可以选择使用 Direct Query 连接来创建它，而不是将数据加载到内存中。

## 连接至数据库

开始使用 Direct Query 的第一步是连接到数据库。

信息注释有关支持的数据源列表，请参阅[Data sources in Qlik Cloud Analytics](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Helpsites/Connectors_SaaS.htm)。

执行以下操作：

1. 创建新的 Qlik Sense 分析应用程序。

   [创建应用程序并添加数据](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/create-app-cloud-hub.htm)

2. 选择现有数据连接或添加新数据连接。

   最佳实践是使用用户定义的凭据，例如在 Snowflake 中使用 OAuth。

   [从连接和新文件向应用程序添加数据](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/adding-data.htm)

   信息注释有关支持的数据连接类型列表，请参阅[使用 Direct Query 直接访问云数据库](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DirectQuery/direct-access-with-direct-query.htm)。

3. 单击菜单。

4. 选择转到 Direct Query。

## 选择数据源和表

要对数据执行分析，请选择要包括的表和列。

执行以下操作：

1. 在刚刚创建的 Direct Query 应用程序中，选择所有者。
2. 选择要分析的一个或多个表。
3. 单击下一步。

然后数据模型管理器打开。

## 在数据模型管理器中创建表之间的关系以构建数据模型

如果分析中包含多个表，则需要在表和字段之间创建关系。

信息注释有关支持的关系类型的完整列表，请参阅[使用 Direct Query 直接访问云数据库](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DirectQuery/direct-access-with-direct-query.htm)。

执行以下操作：

1. 在数据模型管理器中，单击关系。

2. 选择要关联的表和字段。

   有关更多信息，请参阅[在数据管理器中联接表格](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/join-keep-tables-in-data-manager.htm)。

   信息注释一次只能选择两个表。要创建更多关系，请重复整个过程。

   信息注释不支持循环关系。

3. 在所有相关字段和表之间创建关系后，单击应用更改。

所有关系都显示在数据模型管理器的主屏幕上。通过单击列表中的相应表，可以对它们所基于的表的关系进行排序。

提示注释在 Direct Query 中创建数据模型时，请使模型尽可能简单，因为复杂的查询更可能导致性能问题。

提示注释使用 Direct Query 时，建议您创建模板 Direct Query 应用程序。这样，您可以在创建新的 Direct Query 应用程序时，通过复制带有预定义模型的模板应用程序来节省时间。

## 添加可视化

有关如何添加可视化的说明，请参阅[创建可视化](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Visualizations/create-visualizations.htm)。

信息注释并非所有的可视化类型都在 Direct Query 应用程序中受支持，与内存中的应用程序相比，有些应用程序具有不同的限制。有关支持的图表和函数的完整列表，请参阅[使用 Direct Query 直接访问云数据库](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DirectQuery/direct-access-with-direct-query.htm)。

可以在度量表达式中使用云数据库中的函数，但不能在计算维度中使用。

## 共享 Direct Query 应用程序

对 Direct Query 应用程序的访问与内存中的应用程序略有不同，因为用户访问通常由具有用户定义凭据的数据库控制。

* 应用程序和数据连接必须位于 共享空间 中。

* 用户在共享空间中必须具有可以使用数据的角色，并可以访问数据库。