查询设计器和数据处理扩展插件 (SSRS)

查询设计器有助于创建用于指定报表数据集中所需的数据的查询命令。数据处理扩展插件将您创建的查询传递给数据源,然后检索结果集。在您选择数据集的数据源类型时,Reporting Services 提供一个查询设计器和数据处理扩展插件。例如,当您为 Microsoft SQL Server 数据源类型创建数据集时,SQL Server 查询设计器会在您创建查询时打开。

查询设计器和数据处理扩展插件对使用特定语言版本的数据源的支持可能不同。例如,像 Transact-SQL 这样的查询语言在语法上可能有所不同,具体情况取决于数据源类型。Microsoft Transact-SQL 语言与 Oracle SQL 语言在查询命令的语法上有不同之处。

查询设计器与数据源类型

可以使用查询设计器创建用于从数据源中检索数据的新查询。还可以从报表定义文件 (.rdl) 中导入现有查询,或者,对于 SQL Server 查询,可从 .sql 文件中导入现有查询。

Reporting Services 提供图形查询设计器和基于文本的查询设计器。使用基于文本的查询设计器,可以在查询窗格中键入命令文本。使用图形查询设计器,可以将表示数据源中基础数据的元数据项拖到查询设计图面上。多数多维数据源都提供了图形查询设计器,这些设计器可显示表示数据源中数据的元数据。单击工具栏上的基于文本的查询设计器图标,即可从图形查询设计器更改为基于文本的查询设计器。

只有在为数据源注册了图形查询设计器后,才能从基于文本的查询设计器更改为图形查询设计器。因为并非所有有效查询都能表示在图形查询设计器中,所以当您切换查询设计器模式时,并不一定会保留您的查询文本。若要最大限度地控制查询文本,请使用基于文本的查询设计器。

以下示例展示了可能受数据访问接口影响的查询命令文本:

  • 支持数据库对象名的架构部分。当数据源使用架构作为数据库对象标识符的一部分时,对于不使用默认架构的任何名称而言,必须将架构名作为查询的一部分提供。例如,SELECT FirstName, LastName FROM [Person].[Person]。

  • 支持查询参数。数据访问接口在为参数提供支持方面存在差异。某些数据访问接口支持命名参数;例如,SELECT Col1, Col2 FROM Table WHERE <parameter identifier><parameter name> = <value>。某些数据访问接口支持未命名参数;例如,SELECT Col1, Col2 FROM Table WHERE <column name> = ?。参数标识符可能因数据访问接口不同而不同;例如,SQL Server 使用“at”(@) 符号,而 Oracle 则使用冒号 (:)。某些数据访问接口不支持参数。有关详细信息,请参阅 Reporting Services 支持的数据源 (SSRS)

有关特定查询设计器的详细信息,请参阅 Reporting Services 查询设计器