0

我正在尝试使用 SSDT 部署一个报告,该报告将允许输入 2 个参数,这些参数可用于日志文件的开始和结束。我的参数在报告数据下的参数下拉列表中声明为日期时间。数据集的属性中也包含参数。这是我的 SQL 语句和错误。

[Declare] @StartTime DateTime 
[Declare] @EndTime Datetime 
SELECT RecordID, AnalysisID, HeatName, NewHeatName, AnalysisTime, SampleType, Grade, NewGrade, ProductID, RecordChangeTime, ChangesMade, LoggedUser
FROM Chemistry_Log
WHERE (RecordChangeTime >= @ StartTime) AND (RecordChangeTime <= @ EndTime)

解析 SQL 窗格的内容时遇到以下错误:

无法解析查询文本。

我不确定从这里去哪里,因为这不是错误消息的非常有用的信息......

4

2 回答 2

0

您的查询看起来正确。我认为问题不存在。报告中是否定义了参数?也就是说,它们是否出现在报告项的参数部分?它们是否也在数据集的属性中定义?通常这些应该会自动获取任何未声明的参数,但我见过自动创建不起作用的时候。

如果您在报告定义中看到参数,请确保将它们设置为 DateTime 参数。此外,在运行示例查询时不要将它们留空:提供有效的日期值。即使您单击“确定”,也会出现询问参数值的提示。只需填写任何有效日期:SSRS 有时需要它来运行一次查询并确定查询将返回的列。

于 2013-04-19T02:35:38.823 回答
0

无法解析查询文本

您的查询应该使用提供的信息。唯一缺少的部分是您的变量声明。在这种情况下,我没有看到:

Declare @StartTime DateTime 
Declare @EndTime   Datetime

这将声明准备好存储的变量DateTime。至于如何将值分配给变量,这完全取决于您要对查询执行的操作。

您没有提供足够的信息让我更详细地了解。

于 2013-04-19T00:35:07.497 回答