Невозможно подключится к базам данных firebird используя модуль python-kinterbasedb.
Скрипт для воспроизведения:
# -*- coding: utf-8 -*-
import kinterbasdb
from contextlib import closing
conn = kinterbasdb.connect(
host='localhost', database='MO_DC',
user='sysdba', password='masterkey',
dialect=3, charset='WIN1251')
curs = conn.cursor()
curs.execute(u'select 1 from RDB$DATEBASE')
Выполнение:
$ python connect.py
Traceback (most recent call last):
File "connect.py", line 11, in <module>
curs.execute(u'select 1 from RDB$DATEBASE')
kinterbasdb.OperationalError: (-901, 'begin transaction: \n invalid parameter in transaction parameter block')
Эта ошибка проявляется в kinterbasdb вериии 3.2 и меньше при попытке подключится к firebird версии 2.1 и выше.
Она исправлена в kinterbasdb версии 3.3.
Моё окружение Kubuntu 9.10
$ uname -a
Linux hius 2.6.31-15-generic #50-Ubuntu SMP Tue Nov 10 14:54:29 UTC 2009 i686 GNU/Linux
$ python -V
Python 2.6.4
$ apt-cache show firebird2.1-super
Package: firebird2.1-super
Priority: optional
Section: universe/misc
Installed-Size: 7452
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Firebird Group <pkg-firebird-general@lists.alioth.debian.org>
Architecture: i386
Source: firebird2.1
Version: 2.1.2.18118-0.ds1-4
Provides: firebird-server
$ apt-cache show python-kinterbasdb
Package: python-kinterbasdb
Priority: optional
Section: universe/python
Installed-Size: 1160
Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>
Original-Maintainer: Debian Python Modules Team <python-modules-team@lists.alioth.debian.org>
Architecture: i386
Version: 3.2-3ubuntu3
П.С. А размещённая здесь информация о багах идёт куда-нибудь дальше?
Или лучше размещать её где-нибудь ещё?