PDO_FIREBIRD-DSN(3) 1 PDO_FIREBIRD-DSN(3)PDO_FIREBIRD DSN - Connecting to Firebird databases
The PDO_FIREBIRD Data Source Name (DSN) is composed of the following elements:
o DSN prefix
- The DSN prefix is firebird:.
o dbname - The name of the database.
o charset - The character set.
o role - The SQL role name.
Example #1
PDO_FIREBIRD DSN example with path
The following example shows a PDO_FIREBIRD DSN for connecting to Firebird databases:
firebird:dbname=/path/to/DATABASE.FDB
Example #2
PDO_FIREBIRD DSN example with port and path
The following example shows a PDO_FIREBIRD DSN for connecting to a Firebird database using hostname port and path:
firebird:dbname=hostname/port:/path/to/DATABASE.FDB
Example #3
PDO_FIREBIRD DSN example with localhost and path to employee.fdb on Debian system
The following example shows a PDO_FIREBIRD DSN for connecting to a Firebird database employee.fdb using localhost:
firebird:dbname=localhost:/var/lib/firebird/2.5/data/employee.fdb
PHP Documentation Group PDO_FIREBIRD-DSN(3)
Check Out this Related Man Page
FirebirdEmbedded(3pm) User Contributed Perl Documentation FirebirdEmbedded(3pm)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::FirebirdEmbedded, 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::FirebirdEmbedded.
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 elliminates 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::FirebirdEmbedded
perl v5.14.2 2011-11-15 FirebirdEmbedded(3pm)