mysql - 处理 pyformat 参数失败; %s"% 错误

标签 mysql python-2.7

我在脚本中有以下查询:

    conn = mysql.connector.connect(**config)
    connect = conn.cursor()
    params = {'build': self.tc.tag, 'page': self, 'object_id': self.object_id, 'page_header': self.page_header,
              'interval': t.interval, 'timestamp': timestamp}
    query = u'INSERT INTO page_load_times (build, page, object_id, page_header, elapsed_time, date_run) ' \
            'VALUES (%(build)s, %(page)s, %(object_id)s, %(page_header)s, %(interval)s, %(timestamp)s)'
    connect.execute(query, params)
    conn.commit()
    conn.close()

当我运行它时,'page': self 参数出现以下错误:

"Failed processing pyformat-parameters; %s" % err)
ProgrammingError: Failed processing pyformat-parameters; Python 'appmainmenu' 
cannot be converted to a MySQL type

self 只返回一个 unicode 字符串。我将 'charset': 'utf8', 'use_unicode': True 添加到我的连接配置中,但这也没有帮助。

最佳答案

所以在 params 字典中我将 self 转换为 unicode 所以现在它看起来像 unicode(self)

关于mysql - 处理 pyformat 参数失败; %s"% 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24944078/

相关文章:

mysql - 如何更改我的 MySQL 查询或表布局以使用索引

python - 将函数应用于 Python 字典的所有键

python - 在 OpenShift Python Hosting 上的端口上打开套接字

mysql - 如何在mongodb应用程序中检查用户凭据

php - 无法读取 GROUP_CONCAT 结果中的特定值

python - panda 3d导入模块报错

python - 为什么 python 文档字符串的解释与注释不同

python - KeyError: '\n' python 2.7.5

MySql:以有效的方式求和订单(或太慢)

mysql - 存储缓存数据 - 多少格式化?