插入表

时间:2015-11-27 23:31:15

标签: python mysql mysql-connector-python

我试图使用python将数据插入表中但是我得到了语法错误。这是我的表格式。

mycursor.execute("""CREATE TABLE workers (
                 `ID` int(5) NOT NULL AUTO_INCREMENT,
                 ` x` FLOAT NOT NULL,
                 ` y` FLOAT NOT NULL,
                 `z` FLOAT NOT NULL,
                 `Acc` int NOT NULL,
                 `Datasource` char(3) NOT NULL,
                 `Datatype` int(5) NOT NULL,
         PRIMARY KEY (`ID`))""")

表格代码正常

这是我试图插入这些表格的数据

mycursor.execute("""INSERT INTO workers VALUES
(1,\ 
1.2720693 ,\
6.583606 ,\
6.8299093 ,\
3 ,\
"Acc" ,\
1)""")

这是我得到的错误

mysql.connector.errors.ProgrammingError: 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\ 
1.2720693 ,6.583606 ,6.8299093 ,3 ,"Acc" ,1)' at line 2

1 个答案:

答案 0 :(得分:1)

您从服务器返回的错误告诉您反斜杠是问题所在。

vector

python中的三个字符串是为多行字符串设计的,因此您不需要使用反斜杠处理行继续。您的mycursor.execute(""" INSERT INTO workers VALUE (1, 1.2720693, 6.583606, 6.8299093, 3, "Acc", 1) """) 语句中还有7个字段值,但只需要6个,INSERT列会自动递增。