【发布时间】:2017-12-27 05:48:37
【问题描述】:
我正在尝试将数据列上传到 mySQL 数据库。下面是遇到问题的代码的sn-p。
cursor = mariadb_connection.cursor()
cursor.execute=("CREATE TABLE IF NOT EXISTS table1 (ts TIMESTAMP, col2 char(10), col3 decimal (7,2), col4 decimal (5,2), col5 decimal (7,2), col6 decimal (5,2))")
sql ="INSERT INTO table1 (ts, col2, col3, col4, col5, col6)"
sql += "VALUES (NULL, %s, %s, %s, %s, %s)"
cursor.execute(sql,(var2, var3, var4, var5, var6))
运行代码时,我收到以下错误:
cursor.execute(sql,(var2, var3, var4, var5, var6)) TypeError: 'str' object is not callable
请注意,var2 到 var6 是从 str 对象转换而来的 decimal 对象。
更新:从有问题的行中删除= 后,我现在似乎有另一个错误:mysql.connector.errors.ProgrammingError: 1054 (42S22): Unknown column 'ts' in 'field list'.
任何想法我做错了什么?
更新:未知列问题的解决方法是删除现有表,然后再次运行脚本
【问题讨论】:
-
你在这些变量 var2 到 var6 中保存了什么?
-
你已经用
cursor.execute=...覆盖了execute