web-dev-qa-db-fra.com

Importer mysql.connector Python

J'ai deux fichiers. Le premier a la connexion et la récupération des données. J'importe mysql.connector. Ce fichier s'appelle tasksSql.py

def get_users():
    import mysql.connector

    con = mysql.connector.connect(user='****', password='*****',
                                  Host='127.0.0.1',
                                  database='tasks')
    c = con.cursor()


    users = []

    c.execute("""SELECT * FROM task_user""")

    for row in c:
        user = {
            'id': row[0],
            'first': row[1],
            'last': row[2],
            'email': row[3],
            'password': row[4],
            'creation_date': row[5]
        }
        users.append(user)
    c.close()
    return users

Lorsque je lance ce fichier seul, cela fonctionne et renvoie des données.

J'ai un autre fichier nommé tasks.py où je vais importer ce fichier, mais cela ne fonctionne pas! Quand j'importe le fichier, ça me donne l'erreur:

ImportError: No module named mysql.connector

Qu'est-ce que je fais mal?

24
Chase W.

Selon votre version de python et son installation, il est possible que le connecteur mysql ne soit pas installé, vous pouvez l'installer avec pip

5
Robin Carlier

Je faisais face au même problème. Mon env details - Python 2.7.11 Pip 9.0.1 CentOS version 5.11 (Final)

Erreur sur l'interpréteur python -

>>> import mysql.connector
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named mysql.connector
>>>

Utilisez pip pour rechercher le module disponible -

 $ pip search mysql-connector | grep --color mysql-connector-python



mysql-connector-python-rf (2.2.2)        - MySQL driver written in Python
mysql-connector-python (2.0.4)           - MySQL driver written in Python

Installez le mysql-connector-python-rf -

$ pip install mysql-connector-python-rf

Vérifier

$ python
Python 2.7.11 (default, Apr 26 2016, 13:18:56)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
>>>
69
Rishi

Cela a fonctionné dans Ubuntu 16.04 pour Python 2.7:

Sudo pip install mysql-connector
11
ritz301

J'ai utilisé la commande suivante pour installer python mysql-connector sur Mac. Ça marche

pip installer mysql-connector-python-rf

11
Hui Zheng

python -m pip installe mysql-connector 

5
chandu vutukuri

J'utilise Python 3.4 pour Windows et la bibliothèque mysql installée depuis http://dev.mysql.com/downloads/connector/python/

1
Ernesto Suarez

Dans mon cas, après la mise à niveau récente (Mac OS High Sierra) et la mise à niveau suivante, j'ai commencé à voir l'erreur ci-dessus. J'ai suivi les instructions ci-dessus mais j'ai toujours le même message d'erreur. Puis je me suis rendu compte que je devais utiliser python2, qui pointe vers le brassage installé python plutôt que sur os x. 

1
Ajo Paul

Ce qui a fonctionné pour moi a été de télécharger le fichier .deb directement et de l’installer (dpkg -i mysql-connector-python_2.1.7-1ubuntu16.04_all.deb). Les téléchargements Python se trouvent ici (vous devez d'abord créer un identifiant MySQL gratuit pour le télécharger). Assurez-vous de choisir la bonne version, c'est-à-dire (python_2.1.7 contre python-py3_2.1.7). Seule la version "Architecture Independent" a fonctionné pour moi.

0
xinthose