适用于python 3.7的MySQL软件包

时间:2018-07-22 18:25:47

标签: mysql python-3.7

我需要将数据保存到MySQL数据库中,我的问题是我找不到软件包...

探索的解决方案:

因此,如果有人可以替代python 3.7,或者知道如何获得3.7版的连接器,我会很高兴的。

4 个答案:

答案 0 :(得分:6)

mysqlclient正式支持python3.7,您可以在这里找到它:

https://pypi.python.org/pypi/mysqlclient

1)您可以下载,PyMySQL 0.9.2
2)将文件夹pymysql提取并复制到python Lib文件夹中
3),对于连接,您可以这样做(例如创建一个文件freeman.py

#!/usr/bin/env python

import pymysql

conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='', db='freemanDB')

cur = conn.cursor()
cur.execute("SELECT * FROM users")

print(cur.description)
print()

for row in cur:
    print(row)

cur.close()
conn.close()

答案 1 :(得分:3)

有两种安装MySQL连接器的方法:

  1. 使用Oracle网站上的MySQL Installer *。
  2. 使用pip从PyPI存储库中
  3. pip是Python随附的。

* MySQL安装程序已过时。它仅允许您下载3.6版的连接器,因为这是它被编码为检测到的唯一版本。但是,mysql-connector-python可与Python 3.7.0一起使用。

您可以使用名为pip的内置Python包管理器为Python 3.7安装mysql-connector-python:

PS C:\Users\Ryan> pip install mysql-connector-python
Collecting mysql-connector-python
Downloading https://files.pythonhosted.org/packages/2d/65/3fc902c0f7635912800c6b935313b99b9d4426419ef7ba04f76231b24923/mysql_connector_python-8.0.12-py2.py3-none-any.whl (300kB)
    100% |████████████████████████████████| 307kB 1.1MB/s
Collecting protobuf>=3.0.0 (from mysql-connector-python)
Downloading https://files.pythonhosted.org/packages/77/78/a7f1ce761e2c738e209857175cd4f90a8562d1bde32868a8cd5290d58926/protobuf-3.6.1-py2.py3-none-any.whl (390kB)
    100% |████████████████████████████████| 399kB 1.8MB/s
Requirement already satisfied: setuptools in c:\users\ryan\appdata\local\programs\python\python37\lib\site-packages (from protobuf>=3.0.0->mysql-connector-python) (40.4.3)
Collecting six>=1.9 (from protobuf>=3.0.0->mysql-connector-python)
Using cached https://files.pythonhosted.org/packages/67/4b/141a581104b1f6397bfa78ac9d43d8ad29a7ca43ea90a2d863fe3056e86a/six-1.11.0-py2.py3-none-any.whl
Installing collected packages: six, protobuf, mysql-connector-python
Successfully installed mysql-connector-python-8.0.12 protobuf-3.6.1 six-1.11.0

实际上,官方documentation表示这是安装MySQL连接器的推荐方法。

您可以显示您安装的所有软件包(不是标准库):

PS C:\Users\Ryan> pip list
Package                Version
---------------------- -------
mysql-connector-python 8.0.12
pip                    18.0
protobuf               3.6.1
setuptools             40.4.3
six                    1.11.0

您可以使用pip -V显示pip的版本以及软件包的安装位置。例如,在其下方的文件夹路径中显示“ \ python37”,因此将其安装到了我安装的Python 3.7.0中。

PS C:\Users\Ryan> pip -V
pip 18.0 from c:\users\ryan\appdata\local\programs\python\python37\lib\site-packages\pip (python 3.7)
PS C:\Users\Ryan> py -V
Python 3.7.0

如果需要将其安装到Windows上安装的另一个(较旧)Python版本,则可以使用-#.#在命令行中插入版本号作为开关。例如:

py -3.6 -m pip install mysql-connector-python

答案 2 :(得分:2)

pip install mysql-connector-python

cmd上的此命令将解决此问题。如果您遇到问题,请以管理员身份运行cmd。

答案 3 :(得分:0)

您必须安装flask_mysqldb软件包才能使用MySQL

pip install flask_mysqldb

要使用它:

from project import app

from flask_mysqldb import MySQL

配置MySQL:

app.config['MYSQL_HOST'] = 'localhost'

app.config['MYSQL_USER'] = 'root'

app.config['MYSQL_PASSWORD'] = 'yourpassword'

app.config['MYSQL_DB'] = 'mydbfile'

app.config['MYSQL_CURSORCLASS'] = 'MyCursor'