1

我正在使用 Windows 和 Pycharm 连接到 MySQL。代码库要求我将一个 CMySQLConnection 传递给一个函数,但是当我检查我正在创建的内容时,它是一个 MySQLConnection(不是 C)。这个完全相同的代码在另一台机器上工作(我现在无法访问)所以我知道这与环境/机器的设置有关。我运行了 pip install mysql-connector-python,版本 8.0.19,默认情况下它显然带有 c 扩展名。但似乎我没有 c 扩展名或其他东西,我不知道从哪里得到它。

4

1 回答 1

1

男人)

我今天遇到了这个问题,花了大约 1 个小时来解决它。Windows + PyCharm 的算法:

  1. 加载并安装 C-extension 以连接到 mysql db: https ://dev.mysql.com/downloads/connector/python/2.0.html 检查库和 C-extension 的版本。(需要 C++ 重新分发!)

  2. 安装它

  3. 尝试在 CMD 中导入它:

    导入_mysql_connector

尝试不要从 CMD 连接,而是从项目的虚拟环境(PyCharm 中的终端)连接。如果您发现在 CMD 中导入是有效的,但从 termial 中导入无效,请执行以下操作:

  1. 保存项目需求(pip freeze > req.txt);
  2. 关闭 PyCharm 并删除 venv(资源管理器中的文件夹);
  3. 打开 PyCharm 并使用以下复选框创建新的 venv: 在此处输入图像描述

我知道这不是明确的方法,但我尝试过由管理员安装或由管理员启动 PyCharm。没有案例。PyCharm 说:“没关系。mysql-connect-python 安装成功。”。但 C 扩展不可用。

所以我只是做了我该做的!

于 2020-09-16T17:21:33.070 回答