|
|
1
2
在创建所有列之后,是否包括“执行批处理”分隔符?如果不存在,那么在第一个查询运行时就不会创建列,因为查询分析器同时解析所有列——在解析时,列实际上不存在。 通过添加Go批处理分隔符,可以强制它解析查询的某些部分,这些部分在实际创建列之后使用新创建的列。 |
|
|
2
2
问题(正如DaveMarkle所暗示的,请随意接受他的答案)是SQL Server解析脚本的整个部分。它会发现您所指的是mycolumn,而该列不存在,因此它会给出错误。它在if语句中并不重要。 您可以使用此脚本轻松测试它:
如果我能找到延迟解析的方法,我会更新这个答案,但是除了使用动态SQL之外,我认为您不能。 编辑: 这里有一个可能的解决方案。我还没看过马丁的链接,但那可能是另一个。
顺便说一句,如果您的表中有多行,您会意识到您的变量的值不能被预测,对吗? |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
Marc Guillot · 记录值时忽略冲突 1 年前 |
|
|
Fachry Dzaky · 正确使用ROW_NUMBER 1 年前 |
|
|
TriumphTruth · 从满足特定条件的数据集中选择1行 1 年前 |