【问题标题】:mysql AttributeError 'module' object has no attribute 'unpack_from'mysql AttributeError 'module' 对象没有属性 'unpack_from'
【发布时间】:2016-02-07 08:22:01
【问题描述】:

我使用mysql.connector连接mysql,这是我的Python语句:

conn = mysql.connector.connect(user = 'root', password = 'password', database = 'test', use_unicode = True)`

但是有一个错误,这里是日志:

Traceback (most recent call last):
  File "PythonConnectToMySQL.py", line 6, in <module>
    conn = mysql.connector.connect(user = 'root', password = 'hankenqqqq', database = 'test', use_unicode = True)
  File "/usr/local/lib/python2.7/dist-packages/mysql/connector/__init__.py", line 162, in connect
    return MySQLConnection(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/mysql/connector/connection.py", line 129, in __init__
    self.connect(**kwargs)
  File "/usr/local/lib/python2.7/dist-packages/mysql/connector/connection.py", line 454, in connect
    self._open_connection()
  File "/usr/local/lib/python2.7/dist-packages/mysql/connector/connection.py", line 418, in _open_connection
    self._do_handshake()
  File "/usr/local/lib/python2.7/dist-packages/mysql/connector/connection.py", line 141, in _do_handshake
    packet = self._socket.recv()
  File "/usr/local/lib/python2.7/dist-packages/mysql/connector/network.py", line 235, in recv_plain
    payload_len = struct.unpack_from(
AttributeError: 'module' object has no attribute 'unpack_from'`

这是我的代码:

#!/usr/bin/env python2.7
#-*-coding:utf8-*-

import mysql.connector

conn = mysql.connector.connect(user = 'root', password = 'password', database = 'test', use_unicode = True)

cursor = conn.cursor()    
cursor.execute('create table user (id varchar(20) primary key, name varchar(20))')

cursor.execute('insert into user(id, name) values (%s, %s)', ['1', 'Mary'])
print cursor.rowcount

conn.commit()
cursor.close()

cursor = conn.cursor()
cursor.execute('select * from user where id = %s', '1')

values = cursor.fetchall()
print values

cursor.close()
conn.close()

我在mysql 中创建了数据库test 谢谢

【问题讨论】:

    标签: python mysql python-2.7


    【解决方案1】:

    您使用的是哪个 Python 版本?

    struct 是一个内置库,unpack_from 方法包含在 Python 2.5 版中。

    如果您使用的是旧版本的 Python,请考虑升级到 2.7 或 3.X 版本。

    如果您无法迁移到较新版本,您可以尝试使用较旧版本的连接器(1.0 版与 Python 2.4 兼容)。可以下载旧版本here

    【讨论】:

    • 我的python版本是2.7.6,mysql.connector的版本是2.0.4。所以我觉得不是版本的问题
    • 我找到了这个问题的原因,是因为我写了一个名为struct.py的文件,所以当我导入struct的时候,出现错误。谢谢你的帮助!
    • @ken 你的最后一条评论是我的答案。如果你让它成为一个真正的答案而不是评论,我会支持它。
    猜你喜欢
    • 2021-01-15
    • 2015-05-16
    • 1970-01-01
    • 2022-12-20
    • 2018-01-14
    • 2014-08-15
    • 2016-07-17
    • 2015-05-26
    • 1970-01-01
    相关资源
    最近更新 更多