我的以下SQL代码显示错误.phpMyAdmin中显示的错误消息是
#1064 - 您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在'long = -6.52607,lat = 54.10046,reg ='Rge info ere',info ='general information here'第1行附近使用正确的语法
当我使用phpmyadmin直接插入它们时,long和lat工作正常,但现在执行sql查询时.这两个字段设置为float.我已经厌倦了他们使用和不使用引号.
INSERT INTO events SET
name = 'Home Event',
url = 'home-event',
eventDate = '2013-06-29',
address1 = '18 Daly Park',
address2 = 'Silverbridge',
city = 'Newry',
county = 'Down',
postcode = 'BT35 9PJ',
long = -6.52607,
lat = 54.10046,
reg = 'Rge info ere',
info = 'general info here',
contact = 'contact me',
image = ''
Run Code Online (Sandbox Code Playgroud)
你正在使用一个mysql保留的关键字long,你需要在带有反引号的查询中转义它,让它理解它是一个column name
`long` = -6.52607,
Run Code Online (Sandbox Code Playgroud)
看看这里的文档
关于mysql reserved keyword我的附注,我会补充一点,你可以通过给出一个表别名然后alias.在它之前使用列名来避免转义它们.实际上INSERT查询不支持表别名,因此您无法在此特定情况下使用.
如果你试图谷歌错误消息,LONG是MySQL中的保留关键字.
你有两个选择让它工作,
一,用反引号包装列名,
`long` = -6.52607
Run Code Online (Sandbox Code Playgroud)
或者两个,更改列名称,以便错误不会再返回.
您可以在这里找到所有关键字的列表:MySQL保留关键字列表
| 归档时间: |
|
| 查看次数: |
89 次 |
| 最近记录: |