我遇到了以下代码:
Declare @prmFromDT Datetime;
Declare @prmToDT Datetime;
SET @prmFromDT = '{{ @StartTime }}';
SET @prmToDT = '{{ @EndTime }}';
为什么传递局部变量的参数是围绕双花括号?
答案 0 :(得分:3)
这是您的特定程序(Datazen Dataview)中用于替换参数的语法。
因此,您所看到的是SQL变量@prmFromDT
和@prmToDT
正在填充参数。
参考:
在以前版本的Datazen中,所有参数替换均已完成 排队。这需要使用引号来包装字符串值 (例如,WHERE x =' {{@Xvalue}}')。虽然情况仍然如此 非DB连接类型,建议不要对DB类型执行此操作。 数据库类型将自动打开a周围的引号 参数如果参数是包含在其中的唯一文本 引号,如果存在任何其他文本,查询肯定会失败。对于 例如,虽然上面的例子评估为" WHERE x = @ p1" 类似于" WHERE y =' P001 - {{@Yvalue}}'"将评估为 "在哪里y =' P001- @ p1'"这显然不是正确的SQL参数 语法。
来源:
另请参考如何在datazen中使用参数以及生成的语法: https://christopherfinlan.com/2015/06/10/how-to-enable-user-activity-reporting-on-your-datazen-dashboards/