消息 102,级别 15,状态 1,过程 CaDataGroup_Insert,第 88 行 '=' 附近的语法不正确
Posted
技术标签:
【中文标题】消息 102,级别 15,状态 1,过程 CaDataGroup_Insert,第 88 行 \'=\' 附近的语法不正确【英文标题】:Msg 102, Level 15, State 1, Procedure CaDataGroup_Insert, Line 88 Incorrect syntax near '='消息 102,级别 15,状态 1,过程 CaDataGroup_Insert,第 88 行 '=' 附近的语法不正确 【发布时间】:2017-11-30 18:20:50 【问题描述】:这是它所引用的行:
@VALUE=IIF(VALUE_FLAG='Y',DEFAULT_QUANTITY*RATE,NULL),
导致此错误:
消息 102,级别 15,状态 1,过程 CaDataGroup_Insert,第 88 行 '=' 附近的语法不正确
我在这里不知所措
【问题讨论】:
SELECT @@version
可能您使用的版本低于 SQL Server 2012 或者您的兼容模式太低。
Microsoft SQL Server 2008 R2 (SP1) - 10.50.2550.0 (X64)
【参考方案1】:
IIF
受 SQL Server 2012 及更高版本的支持。你可以改用CASE
:
@VALUE=CASE WHEN VALUE_FLAG='Y' THEN DEFAULT_QUANTITY*RATE END
ELSE
的默认值为 NULL
,因此我们可以省略它。
【讨论】:
我想你可能会写“在 SQL Server 2012+ 中支持”以上是关于消息 102,级别 15,状态 1,过程 CaDataGroup_Insert,第 88 行 '=' 附近的语法不正确的主要内容,如果未能解决你的问题,请参考以下文章
错误:消息102,级别15,状态1,过程InsertCustomers,第30行'THROW'附近的语法不正确
消息 102,级别 15,状态 1,第 3 行“,”附近的语法不正确 [重复]
消息 102,级别 15,状态 1,第 1 行“日期”附近的语法不正确。在更新查询中[关闭]
消息 443,级别 16,状态 15,过程 myinsert,第 6 行 在函数内对带副作用的运算符 ‘INSERT‘ 的使用无效。