SET操作sql上的双花括号

时间:2017-09-15 07:51:17

标签: sql sql-server

我遇到了以下代码:

Declare @prmFromDT Datetime;
Declare @prmToDT Datetime;

SET @prmFromDT = '{{ @StartTime }}';
SET @prmToDT = '{{ @EndTime }}';

为什么传递局部变量的参数是围绕双花括号?

1 个答案:

答案 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参数   语法。

来源:

https://social.technet.microsoft.com/wiki/contents/articles/32028.datazen-data-view-parameter-replacement-functions.aspx

另请参考如何在datazen中使用参数以及生成的语法: https://christopherfinlan.com/2015/06/10/how-to-enable-user-activity-reporting-on-your-datazen-dashboards/