【问题标题】:Message 102 Level 15 error SQL Server: Incorrect syntax消息 102 级别 15 错误 SQL Server:语法不正确
【发布时间】:2020-02-15 17:58:23
【问题描述】:

我在运行 SQL 查询时遇到错误。

我收到的错误是:

(102, b"'2020-01-31 00:00:00' 附近的语法不正确。DB-Lib 错误消息 102,严重性 15:\n一般 SQL Server 错误:检查消息 来自 SQL Server\nDB-Lib 错误消息 102,严重性 15:\n常规 SQL Server 错误: 检查来自 SQL Server 的消息\nDB-Lib 错误 消息 102,严重性 15:\n一般 SQL Server 错误:检查消息 从 SQL Server\n")

由于查询很长,我只将查询的一部分放在显示错误的位置:

T1.submit_date < ts '2020-01-31 00:00:00'

如果需要,我将编辑并放置整个查询。

感谢任何帮助。

谢谢。

【问题讨论】:

  • 这里的 ts 是什么?
  • 这是 SQL Server (Microsoft SQL, MS SQL) 错误消息,而不是 MySQL 消息。再逐个字母比较:MS SQLMySQL
  • 嗨红。 ts 是时间戳,一个 ODBC 文字转义序列。更多信息在这里:stackoverflow.com/questions/15759458/…
  • 嗨,Akina。我在后端使用的是 MySQL。我不清楚一件事。您是否建议我更改问题的标题和标签?我认为服务器由于查询中的错误而引发错误。
  • 真的很抱歉,伙计们。我是数据库新手,不知道这两者本身就是两种不同的技术。 { 在此处插入尴尬的表情符号 }

标签: sql-server odbc


【解决方案1】:

ODBC escape sequences 的格式不正确。应该用{}包裹起来

where T1.submit_date < {ts '2020-01-31 00:00:00'}

【讨论】:

猜你喜欢
  • 2018-06-19
  • 2013-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-30
  • 2016-10-28
  • 2019-12-02
相关资源
最近更新 更多