我正在使用phpMYAdmin运行SQL查询,并在通过键盘输入单引号时出现语法错误。
当我使用键盘输入的单引号时,与使用phpMyAdmin自动生成的SQL语句相反,我收到语法错误。 (完全相同的SQL语句,从自动生成的SQL语句中没有问题)
单引号在键盘输入时看起来不同,然后由phpMyAdmin自动生成。
正如您在图片中看到的那样,单引号为' id',' name' (由phpMyAdmin自动生成的代码提供的引用)不同于' 3'律师' (键盘输入时显示的单引号类型)。
这是我的笔记本电脑(Windows 10)或phpMyAdmin中的错误设置吗?
我该如何解决这个问题?
答案 0 :(得分:1)
MySQL使用反引号(`
)来表示数据库,表和列名称。单引号('
)用于表示字符串值。所以phpMyAdmin使用的语法在这里是正确的。您手动输入的SQL所带来的麻烦是因为MySQL区分了反引号和单引号;在这里使用列名的单引号是不正确的。
你通常可以完全省略反引号;当数据库/表/列名称也是MySQL关键字(例如date
)时,它是特别需要的,并且您通常可以完全忽略它。
有关MySQL(v5.7)中的更多详细信息和关键字和保留字列表,请参阅MySQL文档中的10.3 Keywords and Reserved Words。