Provided by: libdbd-firebird-perl_1.34-1build5_amd64 bug

NAME

       DBD::FirebirdEmbedded - embedded Firebird server (and client)

SYNOPSIS

         use DBI;

         $dbh = DBI->connect("dbi:FirebirdEmbedded:db=$dbname", undef, undef);

         # See the DBI module documentation for full details

DESCRIPTION

       DBD::FirebirdEmbedded is a variant of DBD::Firebird, linked with the Firebird embedded library,
       libfbembed. In addition to the ability to work with remote Firebird servers (which DBD::FirebirdEmbedded
       has, being linked with the Firebird client library, libfbclient), DBD::FirebirdEmbedded can be used to
       work with Firebird databases without the need of a dedicated Firebird server.

       The following things should be set up first:

       Username/password
           These  should  be  unset. Both in the "DBI->connection(...)" call and in the environment ("ISC_USER",
           "ISC_PASSWORD", "DBI_USER", "DBI_PASSWORD" variables).

       Firebird lock directory
           The "FIREBIRD_LOCK" environment variable should be set to some place where  the  process  can  write.
           Note  that  if  you  plan for several processes to access the database file directly, they all should
           have "FIREBIRD_LOCK" set to the same directory, or else database corruption will occur.

       No "host" in the DSN
           Obviously, do not set any host when calling "DBI->connection(...)", not even "localhost".

       Permissions to read/write the database
           Obviously, the process needs to be able to read/write the database file.

COMPARISON WITH DBD::FIREBIRD

       DBD::FirebirdEmbedded provides exactly the same functionality as the Firebird server of the same  version
       as  the  libfbembed  library. It still can work with remote datases, in which case the use is exactly the
       same (DSN, environment) as with the regular DBD::Firebird.

   Pros
       Standalone work with Firebird databases
           No need to setup/administer a Firebird server. All the server  functionality  is  available  via  the
           libfbembed  library. Shared access to databases is still possible (but read "Firebird lock directory"
           above).

       No network latency
           Working directly with the database file eliminates possible network delays (even if the server is  on
           the local host).

   Cons
       Memory footprint
           The  libfbembed  library contains a fully functional Firebird server and is therefore bigger than the
           ordinary client library, libfbclient.

       Setup complexity
           It is very important to make sure that all processes that access a given database use the  same  lock
           directory. See "Firebird lock directory" above.

SEE ALSO

       DBD::Firebird

perl v5.38.2                                       2024-04-01                              FirebirdEmbedded(3pm)