Я не могу соединиться с mySQl дб с помощью pyodbc.
Вот отрывок моего сценария:
import pyodbc
import csv
cnxn = pyodbc.connect("DRIVER={MySQL ODBC 3.51 Driver}; SERVER=localhost;DATABASE=mydb; UID=root; PASSWORD=thatwouldbetelling;")
crsr = cnxn.cursor()
with open('C:\\skunkworks\\archive\\data\\myfile.csv','r') as myfile:
rows = csv.reader(myfile, delimiter=',', quotechar='"')
for row in rows:
insert_str = 'INSERT into raw_data VALUES(something, something)'
print insert_str
#crsr.execute(insert_str)
cnxn.commit()
myfile.close()
Я получаю эту ошибку в pyodbc.connect () строка:
pyodbc. Ошибка: ('IM002', '[ODBC Driver Manager] имя источника данных [IM002] [Microsoft], не найденное и никакой драйвер по умолчанию, указало (0) (SQLDriverConnectW)'),
У меня есть другой вопрос относительно этой ошибки (и сценарии Python в целом). Когда я выполняю это как сценарий, он перестал работать тихо (я ожидал отслеживание стека). Я должен ввести каждую строку вручную для нахождения, где ошибка произошла.
Я немного ленив на данный момент (никакая обработка исключений) - это нормальное поведение сценария Python без обработки исключений для сбоя тихо?
[Править]
Я не использую mysqldb, потому что я уже использую pyodbc для извлечения моих данных из другого источника (Доступ MS). Хорошо, не серьезное основание - но я уже борюсь с pyodbc, и я действительно не представляю себе иметь необходимость бороться с другой библиотекой/модулем/пакетом (безотносительно его названного в Python) для "одного от" задания. Я просто хочу переместить свои данные от различных источников данных в среде Windows к mySQl на Linux. однажды на Linux, я вернусь на суше.
Это - весь 'сценарий' тут же. Я просто сохранил код выше в файл с .py расширением, и я запускаю Python myscript.py в командной строке. Я выполняю это на своей машине XP