我现在开始使用Python脚本来管理与MySQL相关的数据库。 我面临着语法错误的问题,似乎不知道为什么
当我运行以下代码时:
import MySQLdb
import time
conn = MySQLdb.connect("localhost","username","password","DataBase")
c= conn.cursor()
c.execute("SELECT * FROM table")
rows=c.fetchall()
for eachRow in rows:
print eachRow
我可以把桌子上的行都拿出来,这样一切都好了。 但是,当我使用插入语句时,如下所示:
import MySQLdb
import time
conn = MySQLdb.connect("localhost","username","password","DataBase")
c= conn.cursor()
c.execute("INSERT INTO table(collumn1,collumn2) VALUES(23:EA:4A:7F:A1,Someone)")
c.execute("SELECT * FROM table")
rows=c.fetchall()
for eachRow in rows:
print eachRow
我得到了语法错误,我说它在第1行是“near'Collumn1,collumn2)Values(23:EA:4A:7F:A1,Someone)”
我已经检查了文档,相信我使用了正确的语法。 尝试过使用多个字段类型(varchar,text,…)以及是否在末尾使用分号。 collumn1是varchar(14) collumn1是文本 在debian linux gnu(armv71)上使用mysql版本14.14发行版5.5.57
试着这样做:
table
是SQL中的保留关键字,因此应该避免将表命名为table
。就像给你的孩子起名Kid
,等等。。但无论如何,如果你打算使用保留关键字,你必须把它们用双引号括起来至于值,
Someone
是一个字符串,所以您应该用单引号将其括起来。我不确定23:EA:4A:7F:A1
的类型,但我猜这也是一个字符串,所以最好也包装一下相关问题 更多 >
编程相关推荐