Subject Re: Using firebird either in in embedded mode or in server mode
Author Adam
--- In firebird-support@yahoogroups.com, "Jeff Lynn" <jmlynn@...> wrote:
>
> I was looking for an embedded database engine for an interal daemon
> application and advoid dependency on a full-blown database server as
> well as simple installation. Prebuilding the database file and then
> bundle the database file with the application is good. I just need to
> be able to attach the database file and use it for
> insert/delete/update/query purpose.
>
> With post from Adam, I can not successfully created the database file,
> create a test table with some test records. However, while using
> ISQL, it forced me to provide user/password. The consequence is now
> my test C++ program failed during the isc_attach_database api call
> with error indicating the database requires user/password.
>
> Wonder how you can get around that?
>

The user level security is policed at the server level. Embedded still
must obey the user level security within the database schema (which
users are allowed to insert etc into which tables) because it is
actually an instance of a Superserver.

Where embedded differs with respect to security is that there is no
security database, so any username/password will be accepted (but that
user must have been granted internal permissions to the roles or
objects they will use).

The reason you were advised to install a full SuperServer for
development is because of the restrictions of embedded will annoy you
as soon as you want to open a database explorer tool while you are
running your application and one or the other will get locked out. I
develop on a full server, and the tier level sections of the
application are switched over to embedded when they are released.

So just provide it with a username and password (eg SYSDBA / masterke)
and it will work.

Adam