Hello, Hope everyone is doing well. Having this problem of not being able to connect to an existing embedded Firebird database using Python. I work regularly on a Windows 7 x64-bit, Python 2.7 (switched to 2.6 for kinterbasdb w/o success, then switch back). I also have a licensed copy of Firebird Maestro. Tried three different library packages:
* firebirdsql (relatively new, but does not seem to have support for embedded) (http://pypi.python.org/pypi/firebirdsql <http://pypi.python.org/pypi/firebirdsql> ) * kinterbasdb (last update was in 2010, seemed to install) ( * fdb (could not install either on Windows or MacOS).(http://pypi.python.org/pypi/fdb <http://pypi.python.org/pypi/fdb> ) have the bellow code (basically trying to invoke the sample code on the documentation: # import firebirdsqlimport kinterbasdb # the server is named test.fsdb# con = firebirdsql.connect(dsn='TEST.FDB', user='SYSDBA', password='masterkey')con = kinterbasdb.connect(host='', database=r'C:\src\python\pyfirebirdsql\TEST.FDB',user='sysdba', password='masterkey') cur = con.cursor() # execute the select statementcur.execute("select * from languages order by year_released") # retrieve all rows in a sequence and print the sequenceprint cur.fetchall() TEST.FDB file is in the same directory as I am running the script. With firebirdsql package, I receive below: c:\src\python\pyfirebirdsql>python fsdb_test.pyTraceback (most recent call last): File "fsdb_test.py", line 5, in <module> con = firebirdsql.connect(dsn='TEST.FDB', user='SYSDBA', password='masterkey') File "c:\src\python\pyfirebirdsql\firebirdsql\__init__.py", line 64, in connect database=database, charset=charset, port=port) File "c:\src\python\pyfirebirdsql\firebirdsql\fbcore.py", line 759, in __init__ self.sock.connect((self.hostname, self.port)) File "C:\Python27\lib\socket.py", line 224, in meth return getattr(self._sock,name)(*args)socket.error: [Errno 10061] No connection could be made because the target machine actively refused it Looks like support for embedded is missing for firebirdsql. With kinterbasdb, I get this: c:\src\python\pyfirebirdsql>python fsdb_test.pyTraceback (most recent call last): File "fsdb_test.py", line 2, in <module> import kinterbasdb File "C:\Python27\lib\site-packages\kinterbasdb\__init__.py", line 119, in <module> import _kinterbasdb as _kImportError: DLL load failed: %1 is not a valid Win32 application. This is 32 bit vs 64-bit issue looks like. I made sure I used both 64-bit editions of Python 2.7 and kinterbasdb-3.3.0. Still getting this message. Created an embedded folder as described here in the Python27\Lib\site-packages\kinterbasdb\embedded and copied the three DLLS (unblocked on Windows). Could not even install fdb using below command: c:\src\python\fdb-0.9.1>python setup.py buildTraceback (most recent call last): File "setup.py", line 7, in <module> from fdb import __version__ File "c:\src\python\fdb-0.9.1\fdb\__init__.py", line 23, in <module> from fdb.fbcore import * File "c:\src\python\fdb-0.9.1\fdb\fbcore.py", line 26, in <module> from . import ibase File "c:\src\python\fdb-0.9.1\fdb\ibase.py", line 39, in <module> fb_library = WinDLL(fb_library_name) File "C:\Python27\lib\ctypes\__init__.py", line 353, in __init__ self._handle = _dlopen(self._name, mode)TypeError: expected string or Unicode object, NoneType found Just to see if embedded works, I switched to .NET (sigh) and able to connect to the same database using the below: class Program { static void Main(string[] args) { string ConnectionString = "Database=E:\\TEST.FDB;User=SYSDBA;Password=masterkey;Dialect=3;ServerTy\ pe=1"; FbConnection addDetailsConnection = new FbConnection(ConnectionString); addDetailsConnection.Open(); Console.WriteLine("connection open"); Console.ReadLine(); addDetailsConnection.Close(); Console.WriteLine("connection closed"); Console.ReadLine(); } } For .NET, I followed the detailed and easy-to-follow instructions found here. http://nazmialtun.blogspot.com/2012/01/using-embedded-firebird-database-\ in-net.html <http://nazmialtun.blogspot.com/2012/01/using-embedded-firebird-database\ -in-net.html> Any help, expertise with the above would be appreciated. Thanks! Baskin Tapkan