当我尝试使用以下字段方向(从,到,消息)插入Mysql中的表时,出现以下错误
您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册以获取正确的语法,以在“从,到,消息”附近使用VALUES(“传出”,“ FROM_NUMBER”,“ TO_NUMBER”,“ asas”)'
查询:
INSERT INTO corporate.sms (direction, from, to, message) VALUES ( 'outgoing','FROM_NUMBER','TO_NUMBER','test message');
还有其他方法可以在不更改列名的情况下进行插入吗?
答案 0 :(得分:1)
由于MySQL的SQL语法保留了字段名称(例如“ from”和“ to”), 您需要使用`(反引号)来包装这些字段名称。
因此您的SQL将是
INSERT INTO corporate.sms (direction, `from`, `to`, message) VALUES ( 'outgoing','FROM_NUMBER','TO_NUMBER','test message');
答案 1 :(得分:1)
from
和to
是SQL中的保留关键字。
解决方案非常简单。只需将查询中的from
和to
列封装在两个Grave重音(``)之间,这是键盘上Tab
上方的键。这样,SQL Parser可以使用保留关键字来区分列名称并执行插入。
查询变为:
INSERT INTO corporate.sms (direction, `from`, `to`, message) VALUES ( 'outgoing','FROM_NUMBER','TO_NUMBER','test message');