gpt4 book ai didi

Mysql Error 1064 ("You have an error in your SQL syntax") 由 SQL 注释触发

转载 作者:可可西里 更新时间:2023-11-01 06:40:06 24 4
gpt4 key购买 nike

我有一系列用于创建模式的脚本,在每条指令之前都有如下注释:

--------------------------------------------------------
-- Table TABLE_NAME
--------------------------------------------------------

当我在命令行上从 mysql 执行脚本时,出现如下错误:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '------------------------------------------------------
------------------------' at line 1

(实际上,我对每条评论都有一个错误,尽管该消息总是引用第 1 行)。

为了快速解决我的问题,我简单地删除了注释,脚本运行没有问题,但我很惊讶看到这样的行为并且无法在 stackoverflow 上找到相关问题。有人有解释吗?有没有人观察到这种奇怪的行为?

我正在运行 mysql 5.6.30,此时 ubuntu 上默认为 5.6。

最佳答案

来自MySQL Manual :

From a “-- ” sequence to the end of the line. In MySQL, the “-- ” (double-dash) comment style requires the second dash to be followed by at least one whitespace or control character (such as a space, tab, newline, and so on). This syntax differs slightly from standard SQL comment syntax, as discussed in Section 1.8.2.4, “'--' as the Start of a Comment”.

(强调我的)

tl;DR 您的 -- 表示注释必须后跟至少一个空格或控制字符。

你的固定代码:

-- -----------------------------------------------------
-- Table TABLE_NAME
-- -----------------------------------------------------

在MySQL中也可以使用这样的语法:

/* 
* Table TABLE_NAME
*/

甚至这样:

# -----------------------------------------------------
# Table TABLE_NAME
# -----------------------------------------------------

关于Mysql Error 1064 ("You have an error in your SQL syntax") 由 SQL 注释触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38074662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com