Форум сайта python.su
0
все доброго времени суток.
вопрос у меня достаточно обширен :)
итак перед мной встала задача написать приложение которое бы общалось с БД mySQL и Firebird.
Спустя пары часов нагуглил про PyODBC, скачал, поставил. Потом понял что ему требуются драйвера для работы с базами. Решил начать с mySQL. Скачал вот отсюда дрйвер: http://dev.mysql.com/downloads/connector/odbc/
распаковал, скопировал libmyodbc5.so в /usr/lib/
так же я установил пакет unixodbc, зачем пока что не знаю… но подумал что пригодится)
вот содержимое файлов odbcinst.ini и odbc.ini:
odbcinst.ini (на сколько я понял в этом файле хранятся пути до различных драйверов)
[MySQL]
Driver = /usr/lib/libmyodbc5.so
SETUP = /usr/lib/libmyodbc3S.so
UsageCount = 1
[MYSQL]
Description = MySQL database
Driver = MySQL (это на сколько я понял берется из odbcinst.ini )
Database = /var/lib/mysql/first
Servername = localhost
Username = keizer
Password = Пароль
port = 3306
import pyodbc con = pyodbc.connect("DSN=MYSQL") Traceback (most recent call last): File "<pyshell#4>", line 1, in <module> cnxn = pyodbc.connect("DSN=MYSQL") Error: ('00000', '[00000] [iODBC][Driver Manager]/usr/lib/myodbc5.so: cannot open shared object file: No such file or directory (0) (SQLDriverConnect)')
import pyodbc con = pyodbc.connect("UID=keizer;PWD=Пароль;DATABASE=first;DRIVER={MySQL};SERVER=localhost;PORT=3306") Traceback (most recent call last): File "<pyshell#8>", line 1, in <module> con = pyodbc.connect("UID=keizer;PWD=Пароль;DATABASE=first;DRIVER={MySQL};SERVER=localhost;PORT=3306") Error: ('00000', '[00000] [iODBC][Driver Manager]/usr/lib/myodbc5.so: cannot open shared object file: No such file or directory (0) (SQLDriverConnect)')
Отредактировано keizer08 (Апрель 3, 2012 08:49:58)
Офлайн
0
ага… одну ошибку нашел. Банально, но просто неправильно было указано имя драйвера в odbcinst.ini, но легче не стало(((
теперь выдает вот это:
con = pyodbc.connect("UID=keizer;PWD=Пароль;DATABASE=first;DRIVER={MySQL};SERVER=localhost;PORT=3306") Traceback (most recent call last): File "<pyshell#12>", line 1, in <module> con = pyodbc.connect("UID=keizer;PWD=Пароль;DATABASE=first;DRIVER={MySQL};SERVER=localhost;PORT=3306") Error: ('HY000', '[] \xf8\x93\x90\x81\x9b\xf8\x94\xb0\x81\xb9\xf8\x93\x80\x81\x91\xf8\x96\xb0\x81\x9d\xf8\x91\x80\x81 \x8f\xf8\x90\xb0\x81\x82\xf8\x8d\x90\x80\xa0\xf8\x8c\x90\x80\xae\xf8\x91\x80\x80\xa0\xf8\x9a\x90 \x81\xb2\xf8\x99\x90\x81\xb6\xf8\x97\x90\x81\xb2\xf8\x98\x90\x81\x86\xf8\x9b\x80\x81\xa9\xf8\x99 \x80\x81\xa5\xf8\x9d\x80\x80\xa0\xf8\x88\x80\x81\xaf\xf8\x98\x90\x81\xb0\xf8\x9c\xb0\x81\xb2\xf8 \x88\x80\x81\xa5\xf8\x9a\x80\x81\xb4\xf8\x88\x80\x81\xa5\xf8\x9b\xa0\x81\xa9\xf8\x9b\xb0\x81\xa3 \xf8\x9a\x90\x81\xad\xf8\x99\xb0\x81\xae\xf8\x98\xb0\x80\xa0\xf8\x9b\xa0\x81\xaf\xf8\x99\x90\x81 \xae\xf8\x9d\x80\x81\xa3\xf8\x9c\xb0\x80\xa0\xf8\x9c\xa0\x81\xb4\xf8\x9b\xa0\x81\xa9\xf8\x8b\xa0 \x81\xa7\xfc\x89\x98\xb0\x80\x80\xfc\x89\x99\x82\x8a\x88w\t (0) (SQLDriverConnect)')
Отредактировано keizer08 (Апрель 2, 2012 15:37:13)
Офлайн