我已经醒了很长时间,并希望有人可以帮我解决这个问题,然后我去
UPDATE Patrons SET name="Paul Mafinger", ADdress="88 Crazy Street", [Phone(H)]="24767536", hone(M)="6345735467", HomeBranch="Manly", Classification="Adult" WHERE MemberID="3973-6726-6813-1091"
和错误
#1064 - 您的SQL语法出错;查看与MySQL服务器版本对应的手册,以便在第1行
'Phone(H)="24767536", hone(M)="6345735467", HomeBranch="Manly", Classificatio'
附近使用正确的语法
答案 0 :(得分:1)
MySQL转义字符是后引号,而不是方括号。另外,对字符串使用单引号。双引号可能与列名混淆:
UPDATE Patrons
SET name = 'Paul Mafinger',
Address = '88 Crazy Street',
`Phone(H)` = '24767536',
`phone(M)` = '6345735467',
HomeBranch = 'Manly',
Classification = 'Adult'
WHERE MemberID = '3973-6726-6813-1091';
我建议您使用“普通”字符命名列,这样它们甚至不需要转义。类似于HomePhone
和MobilePhone
。
答案 1 :(得分:0)
看起来好像应该是:
UPDATE Patrons SET name='Paul Mafinger', ADdress='88 Crazy Street', `[Phone(H)]`='24767536', hone(M)='6345735467', HomeBranch='Manly', Classification='Adult' WHERE MemberID='3973-6726-6813-1091'
您的电话记录包含SQL
语法中使用的字符,因此您可以通过用“字符”围绕它来告诉SQL
它是一个标识符。
[Phone(H)]='24767536'
更改为:
`[Phone(H)]`='24767536'
你可以看到[Phone(H)=]
如何与``字符一起使用还应注意在SQL中,你应该使用单引号而不是双引号来指定String
值。