У меня есть проблема так соединение Python к базе данных, локальной из MySQLdb.
Сообщение ошибки:
import MYSQL
ImportError:No module named MYSQLdb.
Это - сценарий в python 3.4 к соединению моя база данных локальный 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: можно ли помочь мне?
К сожалению, MySQLdb не поддерживает Python 3.
, у Вас в основном есть две опции:
Выполнение Ваш сценарий с помощью python2.7, тот путь Вы не должны будете изменять модуль MySQL. Оборотная сторона - то, что необходимо будет, вероятно, преобразовать некоторый код в python2.x.
Ищут поддерживаемые модули python3.x, как объяснено здесь: Python 3.4.0 с базой данных MySQL .
Я решил эту проблему следующей строкой
pip install pymysql
, Также обновил строку конфигурации MySql к
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://.............'
Насколько я знаю, MySQLdb не поддерживает Python 3. От страницы' [Python MySQL]' 1 обновленный 08.06.2013:
* Python versions 2.4-2.7; Python 3 support coming soon.
mysqlclient-python ( https://github.com/PyMySQL/mysqlclient-python) требует поддержки python 3, но у меня нет опыта с тем продуктом. Лично, я использую pyodbc (также требует libmyodbc), который выглядит очень похожим с точки зрения программирования.
sudo apt install libmysqlclient-dev
затем
для Python 2.x:
pip install mysql-python
для Python 3.x:
pip install mysqlclient
Ответ @technodivesh работал на меня в debian 9 и python 3.5. Но с небольшой модификацией.
Вместо
sudo apt install libmysqlclient-dev
Я использовал:
sudo apt install default-libmysqlclient-dev
Это было предложено здесь
Первая команда возвратила меня -
E: Пакет 'libmysqlclient-dev' не имеет никакого кандидата установки
[Я добавил бы это как комментарий к его ответу. Но, у меня нет необходимой репутации для создания комментариев.]
Для Python3 это
sudo apt-get install python-mysqldb
Другие команды, которые я запускал, которые могут потребоваться или не потребоваться (приведенная выше команда в конечном итоге решила все за меня)
#this was for a new machine set up. one or two of the below failed
sudo apt install python3-pip
pip3 install mysqlclient
pip3 install mysql-connector
pip3 install mysql-connector-python
Это очень просто. Вы должны написать вот так:
import Mysql.connector
mydb = Mysql.connector.connect(
host="127.0.0.1",
user="root",
passwd="shriram@11"
)
mycursor = mydb.cursor()
mycursor.execute("CREATE DATABASE mydatabase")
Этот код будет работать правильно, без ошибок модуля