【问题标题】:SQL query is throwing this error Msg 102, Level 15, State 1, Line 1 Incorrect syntax near ' 'SQL 查询抛出此错误 Msg 102, Level 15, State 1, Line 1 Incorrect syntax near ' '
【发布时间】:2016-04-01 12:31:32
【问题描述】:

查询是:

select * from Test.dbo.Test_Spoc where spocNo = 54986 

在 SQL 2008 中,它在 ' ' 附近抛出错误语法错误。如果我在 Where 之前删除空间并再次给空间它的工作。 在 SQL 2012 中,此查询在此空间出现问题的位置之前也显示红色标志。

我想知道早期空间无法正常工作的原因是什么?

【问题讨论】:

  • 可能是由于复制和粘贴而产生的一些“不可见”字符
  • 可能不是空格,而是其他(不可打印的)字符
  • 您可以看到,例如,如果您将查询粘贴到 Notepad++ 中并转到查看/显示符号/显示所有字符

标签: sql sql-server-2008 sql-server-2012


【解决方案1】:
select * from Test.dbo.Test_Spoc where spocNo = '54986'

添加单引号,我认为这可能是问题;你检查代码

【讨论】:

  • 如果spocNo 是数字,则不需要引号。它们只会导致从字符串转换为数值的数值(或者如果你不走运,则在该列中的所有值上反过来)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-12
  • 2021-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多