【发布时间】:2018-01-22 07:36:52
【问题描述】:
下面是不工作的代码
#!/usr/bin/python
import urllib
import datetime
import mysql.connector
data['price'] = 100
# Write to database
cnx = mysql.connector.connect(user='user', password='pw', database='db')
cursor = cnx.cursor()
query = ("INSERT INTO records(price) VALUES(%s) ")
cursor.execute(query, (data['price']))
cnx.commit()
cursor.close()
cnx.close()
MySQL有对应的表和列。
- id (PRIMARY INT AUTO_INCREMENT)
- 价格(浮动)
没有连接问题。
它给出了以下错误。有什么想法吗?
Traceback(最近一次调用最后一次):文件“./sys-fetchdata.py”,行 22,在 cursor.execute(query, (data['price'])) 文件“/usr/lib/python2.7/dist-packages/mysql/connector/cursor.py”,行 507,在执行中 self._handle_result(self._connection.cmd_query(stmt)) 文件“/usr/lib/python2.7/dist-packages/mysql/connector/connection.py”,行 722,在 cmd_query 结果 = self._handle_result(self._send_cmd(ServerCmd.QUERY, query)) 文件 “/usr/lib/python2.7/dist-packages/mysql/connector/connection.py”,行 640,在_handle_result中 raise errors.get_exception(packet) mysql.connector.errors.ProgrammingError: 1064 (42000): You have an SQL 语法错误;检查与您对应的手册 MySQL 服务器版本,用于在第 1 行的“%s)”附近使用正确的语法
【问题讨论】:
-
@hiro_protagonist 谢谢。你应该把这个放在答案中。这就是问题的根源。