Как подключить python к базе данных mysql с помощью pyodbc API?

import pyodbc

driver='{MySQL ODBC 8.0 ANSI Driver}'
server='localhost'
database='python'
username='root'
password='PASSSWORD'

cnxn = pyodbc.connect(Driver='{MySQL ODBC 8.0 ANSI Driver}',Server=server,Database=database,Uid=username,Pwd=password)
cursor = cnxn.cursor()

Когда я запускаю, это дает мне эту ошибку

cnxn = pyodbc.connect (Driver = '{MySQL ODBC 8.0 ANSI Driver} ', Server = server, Database = database, Uid = имя пользователя, Pwd = пароль)

pyodbc.InterfaceError: ('IM002', '[IM002] [Microsoft] [Диспетчер драйверов ODBC] Имя источника данных не найдено, и драйвер по умолчанию не указан (0) (SQLDriverConnect)')

Проверьте список, возвращаемый pyodbc.drivers(), чтобы увидеть имена драйверов ODBC, доступных для вашего приложения Python. (Кстати, я просто попробовал ваш код, и у меня он отлично сработал.)

Gord Thompson 21.11.2018 01:03

Спасибо за ответ. Но когда я печатаю pyodbc.drivers () для консоли, он не показывает мне никаких драйверов для MySQL.

Sid Sidhant 21.11.2018 01:14

Затем вам необходимо установить копию MySQL Connector / ODBC, которая соответствует «разрядности» вашего интерпретатора Python (32- или 64-разрядной версии).

Gord Thompson 21.11.2018 01:27

Не могли бы вы рассказать мне, как загрузить копию MySQL Connector / ODBC.

Sid Sidhant 21.11.2018 14:28

На всякий случай, если кто-то найдет этот вопрос в неопределенном будущем: вы должны сопоставить битовую архитектуру драйвера ODBC с архитектурой вашей операционной системы, например. 32-разрядная версия Win 10 идет вместе с 32-разрядными драйверами (MySQL, SQL и т. д.). После установки таких драйверов pyodbc.drivers() должен получить некоторую информацию о только что установленных драйверах.

Oskar_U 20.10.2020 21:26
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
5
3 058
0

Другие вопросы по теме