消息 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 行“日期”附近的语法不正确。在更新查询中[关闭]

是否可以从子查询中添加 SQL 别名?

消息 443,级别 16,状态 15,过程 myinsert,第 6 行 在函数内对带副作用的运算符 ‘INSERT‘ 的使用无效。

写代码遇到的灵异事件