如何正确解析SSIS变量表达式?
How to correctly parse SSIS variable expression?
我创建了一个 SSIS 变量,我想把它变成一个表达式,所以我把它写成表达式:
="\\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
我引用的实际 link 是:
\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files
但我收到此消息:无法计算表达式
尝试解析表达式失败。表达式可能包含无效标记、不完整标记或无效元素。它可能格式不正确,或者可能缺少所需元素的一部分,例如括号。
我做错了什么?应该怎么写?
您需要将表达式中的所有斜杠加倍,因此
"\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
变成
"\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
如果你打算编码
"\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
会变成
"\\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
前导等号可能指向不同的问题,因为我能想到的唯一明确的赋值位置是在表达式任务中。在其他任何地方,都有一个单独的字段,您可以在其中列出要修改的变量
如果双引号是表达式本身的一部分,那么您还可以使用反斜杠对其进行转义 \"
在 What is the escape character for SSIS Expression Builder?
上转义两者的绝佳示例
我创建了一个 SSIS 变量,我想把它变成一个表达式,所以我把它写成表达式:
="\\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
我引用的实际 link 是: \livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files
但我收到此消息:无法计算表达式 尝试解析表达式失败。表达式可能包含无效标记、不完整标记或无效元素。它可能格式不正确,或者可能缺少所需元素的一部分,例如括号。
我做错了什么?应该怎么写?
您需要将表达式中的所有斜杠加倍,因此
"\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
变成
"\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
如果你打算编码
"\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
会变成
"\\livprodad1.liv.local\UserProfiles$\mike.jones\Documents\Files"
前导等号可能指向不同的问题,因为我能想到的唯一明确的赋值位置是在表达式任务中。在其他任何地方,都有一个单独的字段,您可以在其中列出要修改的变量
如果双引号是表达式本身的一部分,那么您还可以使用反斜杠对其进行转义 \"
在 What is the escape character for SSIS Expression Builder?