MySQL Error #1064语法错误求助:附INSERT语句及报错详情
MySQL #1064语法错误排查与修复
错误根源分析
你的SQL语句存在3个语法问题:
- 表名包裹符号错误:MySQL中表名/列名不能用单引号
'包裹,单引号仅用于字符串值。你用'BOOKINGS'导致语法解析失败,这是错误提示指向的直接原因。 - 数字前导零的潜在问题:
VALUES中的03会被MySQL解析为八进制数,若LATEST_NO是INT类型,虽然03本身合法,但直接写3更符合常规数字书写习惯,避免不必要的类型解析问题。 - 语句末尾多余符号:SQL语句最后有一个多余的英文句号
.,正确的结束符应该是分号;。
修正后的SQL代码
INSERT INTO `BOOKINGS`(`LATEST_NO`, `BOOKING_ID`, `FNAME`, `LNAME`, `ADD1`, `ADD2`, `CITY`, `COUNTRY`, `MOB`, `EMAIL`, `SPECIL_REQ`, `ORIGINAL_RATE`, `FINAL_RATE`, `PROMO_CODE`, `ROOM_TYPE`, `ROOM_BASIS`) VALUES (3,230203,'Sampath','M','infinitialk No.21','Temple Road','Ragama','LK','+94732547909','info@abc.com','',61000.00,48800.00,'GSH20','Grand Suite Room','Full-Board');
额外提示
如果你的表名BOOKINGS不是MySQL关键字,甚至可以省略反引号,直接写INSERT INTO BOOKINGS(...),代码会更简洁。
内容的提问来源于stack exchange,提问作者Sampath Munaweera
相关产品推荐
相关产品推荐

