web-dev-qa-db-fra.com

Erreur d'importation: aucun module nommé MYSQLdb

J'ai un problème donc une connexion un python à la base de données locale de MySQLdb.

Le message d'erreur est:

import MYSQL    
ImportError:No module named MYSQLdb.

Ceci est un script dans python 3.4 pour connecter ma base de données locale MYSQL.

import MYSQLdb
conn=MYSQLdb.connect (Host ="localhost", user="root" , passwd="abcd",db="nomi")
cursore=conn.cursor()
name=input("Write your name :   ")

x="insert into user (name) values ('%s')"%(name)
cursore.excute(x)
connet.comit()

PS: Pouvez-vous m'aider s'il vous plait?

2
Linus Strike

Vous devez installer le module avec:

Sudo apt-get install python-mysqldb

Référence: Ce fil sur SO

7
user270902

Malheureusement, MySQLdb ne supporte pas Python 3.

Vous avez essentiellement deux options:

  1. Exécutez votre script en utilisant python2.7. Ainsi, vous n’aurez pas besoin de changer le module MySQL. L'inconvénient est que vous devrez probablement convertir du code en python2.x.

  2. Recherchez les modules pris en charge par python3.x comme expliqué ici: Python 3.4.0 avec base de données MySQL .

3
Sylvain Pineau

J'ai eu ce problème résolu par la ligne suivante

pip install pymysql

Également mis à jour la ligne de configuration MySql pour

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://.............'
1
Napolean

Sudo apt install libmysqlclient-dev puis

  • pour python 2.x:

    pip install mysql-python

  • pour python 3.x:

    pip install mysqlclient

1
technodivesh

Autant que je sache, MySQLdb ne supporte pas Python 3. Dans la page '[MySQL-python]' 1 mise à jour le 08/06/2013:

* Python versions 2.4-2.7; Python 3 support coming soon.

mysqlclient-python ( https://github.com/PyMySQL/mysqlclient-python ) réclame le support de python 3 mais je n'ai aucune expérience de ce produit. Personnellement, j'utilise pyodbc (requiert également libmyodbc) qui ressemble beaucoup du point de vue de la programmation.

0
Marc Vanhoomissen