Python:MySQL 错误

标签 python mysql mysql-error-1054

import MySQLdb    
import random

db = MySQLdb.connect (host = "localhost", user = "python-test", passwd = "python", db = "python-test")

cursor = db.cursor()

var = .3

sql = "INSERT INTO RandomInt 
         (RAND) 
       VALUES 
         (var)" # RandomInt is the name of the table and Rand is the Column Name

cursor.execute(sql)

db.commit()
db.close()

我收到一条错误消息说 Operational Error: (1054, "Unknown column 'var' in 'field list'") 为什么我会收到此错误以及如何解决此问题,尽管我已经定义变量?

最佳答案

如所写,var 将作为字符串发送到 MySQL。
试一试:

sql = "INSERT INTO RandomInt (RAND) VALUES (%s)"
cursor.execute(sql, (var,))

编辑:

>>> import MySQLdb
>>> MySQLdb.paramstyle
'format'

MySQLdb的paramstyle是format;其中,根据 DB-API%s:

            'format'        ANSI C printf format codes, 
                            e.g. '...WHERE name=%s'

关于Python:MySQL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3327188/

相关文章:

python - 如何避免按索引对数据透视表进行排序

python - 解析 X-Forwarded-For 以在 Heroku 上使用 werkzeug 获取 ip

mysql - 带有嵌套 where 的 Laravel 原始 SQL 语句

Python日志记录为ini文件中的处理程序添加过滤器?

python - matplotlib 标题中的非 Latex 重音符号

PHP 排名和更新所有数据库行

mysql - 如何在报告中获得条件输出?

MySQL触发器更新另一个表

mysql - 触发器导致 MySQL Error 1054 Unknown Column

mysql - Magento - 注册错误 - 1054 'ca.sort_order' 中的未知列 'order clause'