Узелок на память про ODBC и python. Понадобилось мне экспортировать с MS Access базу данных с кучей записей и разных связей.
Для доступа к БД на MS Access нужно настроить источник данных (DSN).
Под Windows XP
Модуль со стороны python называется pyodbc, установочные файлы есть тут.
Под Ubuntu
Установим нужные пакеты
sudo apt-get install unixodbc mdbtools libmdbodbc pip install pyodbc
Настроем драйвер для доступа к MDB файлам. Правим файл /etc/odbcinst.ini
[AccessMS] Description = AccessMS ODBC Driver = /usr/lib/libmdbodbc.so.0 Setup = FileUsage = CPTimeout = CPReuse =
Настроем DSN к конкретному mdb-файлау. Правим файл /etc/odbc.ini
[test] Description = Test mdb database Driver = AccessMS Database = /home/proft/temp/test.mdb Servername = localhost Username = Password = port = 5432
Проверим настроенную связку
isql -v test SQL> select * from Patient
Строка подключения к настроенному выше DSN:
import pyodbc dbq = pyodbc.connect('DSN=test') cursor = dbq.cursor()
Доступ к полям возможен по индексу, либо по имени поля
for row in cursor.execute("select * from Patient"): print row[0] print row.firstname
Возможности pyodbc чтением не ограничиваются, тут есть примеры других операций.