我无法弄清楚为什么以下简单的tsql更新会返回错误
Incorrect syntax near '*='
SQL:
update unidb.dbo.result
set sra = 'A'
答案 0 :(得分:2)
如果UPDATE
是唯一产生此错误的语句,那么您在dbo.result
上有触发器,其中一个触发器包含此类连接:*=
这意味着{{3} (参见“左外连接”一节)。
解决方案:
1)设置数据库兼容级别SQL Server 2000(如果可以;但从SQL Server 2012开始 - SELECT @@VERSION
- 最低数据库兼容级别是SQL Server 2005)或(更好)
2)将源代码*=
替换为LEFT OUTER JOIN
。