---In [email protected], <helebor@...> wrote :

 > I am using Firebird embedded 3.0.1.
 
 > I receive an EDatabase error : "[ODBC Firebird Driver]Database is
 > probably already opened by another engine instance on another Windows 
 > session."
 
 > when trying to connect to a firebird db simultaneously in
 > Adminstrator (elevated) mode and non-elevated mode with the same user 
 > account.
 
 It is not a question of "elevated" vs "non-elevated" users. Embedded
 is *by design* a single-user model. A successful embedded connection
 locks out all other users from connecting to the same database - hence
 the error message you see. The *same user* can make multiple
 connections from within the same application space.
 
 > Does anyone know how to solve this issue?
 
 It depends on the issue you are trying to solve. But if you want
 multi-user access then you need to install a server. If you want
 multiple embedded connections to connect concurrently, configure the
 server as Classic or Superclassic. Note that the default server
 installation is Superserver, which also cannot share with embedded
 connections.
 
 Describe what you want to achieve in real life and someone will advise
 you about the best model for your requirements.
 
 Incidentally, since you are using Delphi, be aware that embedded is a
 deployment model, not a development one. You can't have an embedded
 connection in the IDE space and another one in the executable space.
 So you need to have a server running for your Delphi development, even
 if you intend to deploy an embedded app for single-user use.
 
 Helen
 

 

 Actually this is only true for superserver embedded mode, prior to 2.5.
 In 2.5 embedded mode on windows is superclassic, and multiple connections from 
multiple applications using the same embedded library are normally possible.
 There is some issue however that does not allow this from some context, e.g. 
from a normal application and from a script, executed by the web server. I 
don't remember now the exact details, but it was not a question of user account 
- even when the web server was using the same user account, it didn't work. I 
believe there is at least one discussion somewhere in the list history about 
this issue.
 

 Emil

 


 


Reply via email to