среда, 8 декабря 2010 г.

Обновляем sqlite в python (win32)

Данный пост является небольшим продолжением предыдущего. Хотя идею описанную ниже можно применять к любому дистрибутиву python для win32. Начиная с версии 2.5 поддержка баз данных sqlite входит в базовую поставку дистрибутивов python. Так исторически сложилось, что обновления для sqlite выходят чаще, чем появляются новые версии python. Работая в одной ветке python не хочется останавливаться и на работе со старой версией sqlite. Например, python 2.5 поставляется с версией sqlite 3.3.4. А уже сейчас доступна версия 3.7.4. Причин может быть несколько: новая версия база данных работает быстрее, добавляет новые функциональности, исправляет старые проблемы.

Для того, чтобы обновить sqlite необходимо:
- скачать с официального сайта sqlite новую DLL библиотеку.
- распаковать из архива файл sqlite3.dll для начала в какую-то временную директорию.
- в директории, где установлен python есть поддиректория DLLs в которой собственно и находится библиотека sqlite, используемая в работе python. Необходимо переименовать старый файл sqlite3.dll на sqlite3.dll.old для того, чтобы иметь возможность вернуться на старую версию, в случае, если что-то пойдет не так.
- переписываем новый файл sqlite3.dll на место старого

Запустив python проверяем версию используемого sqlite3
Python 2.5.4 (r254:67916, Dec 23 2008, 15:10:54) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>> sqlite3.sqlite_version
'3.7.4'
>>>
Данный подход позволяет обновить функциональность работы базы данных sqlite, но не решить вопросы, связанный с работой интерфейса python - sqlite. Об этом следует помнить.

0 комментариев:

Отправить комментарий