SSIS构建包含引号(")的变量字符串

TSk*_*ggs 2 ssis

我正在使用SSIS表达式构建器为Teradata OLEDB连接器构建目标表名称值.Teradata期望数据库(TSKAGGS)和表(Cabinet_50)被双引号(")包围.我无法弄清楚如何配置变量.

到目前为止,我有当前的代码:

@ [User :: strDestDB] +"."+ @ [User :: strDestTable] + @ [User :: strSource_ID]

返回:TSKAGGS.Cabinet_50

我需要它返回:"TSKAGGS"."Cabinet_50"

如何在结果中添加双引号字符?

bil*_*nkc 13

你需要用a来逃避内部引用 \

"abc" + "\"in quotes\""
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

你的具体替换是

"\"" + @[User::strDestDB] + " \".\""+ @[User::strDestTable] + @[User::strSource_ID] + "\""
Run Code Online (Sandbox Code Playgroud)

或者,你可以懒惰并定义一个名为DoubleQuote的变量,并简单地进行上述操作

@[User::DoubleQuote] + @[User::strDestDB] + @[User::DoubleQuote] 
+ "." + @[User::DoubleQuote] + @[User::strDestTable] 
+ @[User::strSource_ID] + @[User::DoubleQuote]
Run Code Online (Sandbox Code Playgroud)


TSk*_*ggs 5

我想到了。我创建了另一个名为 strQuote 的变量,并将 " 指定为值。接下来,我将表达式修改为;

@[User::strQuote] + @[User::strDestDB]+ @[User::strQuote]+ "."+ @[User::strQuote]+ @[User::strDestTable] + @[User::strSource_ID ]+ @[用户::strQuote]

结果返回:“TSKAGGS”.“Cabinet_50”