DBD-Firebird
view release on metacpan or search on metacpan
Firebird.pm view on Meta::CPAN
=item C<ib_tx_info>
$hash_ref = $dbh->func('ib_tx_info');
Retrieve information about current active transaction.
=item C<ib_database_info>
$hash_ref = $dbh->func(@info, 'ib_database_info');
$hash_ref = $dbh->func([@info], 'ib_database_info');
Retrieve database information from current connection.
=item C<ib_plan>
$plan = $sth->func('ib_plan');
Retrieve query plan from a prepared SQL statement.
my $sth = $dbh->prepare('SELECT * FROM foo');
print $sth->func('ib_plan'); # PLAN (FOO NATURAL)
=item C<ib_drop_database>
$result = $dbh->func('ib_drop_database');
Drops the database, associated with the connection. The database handle is no
longer valid after calling this function.
Caution is advised as the drop is irrevocable.
=back
=head1 UNSUPPORTED SQL STATEMENTS
Here is a list of SQL statements which can't be used. But this shouldn't be a
problem, because their functionality are already provided by the DBI methods.
=over 4
=item * SET TRANSACTION
Use C<$dbh->func(..., 'set_tx_param')> instead.
=item * DESCRIBE
Provides information about columns that are retrieved by a DSQL statement,
or about placeholders in a statement. This functionality is supported by the
driver, and transparent for users. Column names are available via
$sth->{NAME} attributes.
=item * EXECUTE IMMEDIATE
Calling do() method without bind value(s) will do the same.
=item * CLOSE, OPEN, DECLARE CURSOR
$sth->{CursorName} is automagically available upon executing a "SELECT .. FOR
UPDATE" statement. A cursor is closed after the last fetch(), or by calling
$sth->finish().
=item * PREPARE, EXECUTE, FETCH
Similar functionalities are obtained by using prepare(), execute(), and
fetch() methods.
=back
=head1 COMPATIBILITY WITH DBIx::* MODULES
C<DBD::Firebird> is known to work with C<DBIx::Recordset> 0.21, and
C<Apache::DBI> 0.87. Yuri Vasiliev <I<yuri.vasiliev@targuscom.com>> reported
successful usage with Apache::AuthDBI (part of C<Apache::DBI> 0.87
distribution).
The driver is untested with C<Apache::Session::DBI>. Doesn't work with
C<Tie::DBI>. C<Tie::DBI> calls $dbh->prepare("LISTFIELDS $table_name") on
which Firebird fails to parse. I think that the call should be made within
an eval block.
=head1 SERVICE METHODS
=head2 DBD::Firebird->create_database( { params... } )
A class method for creating empty databases.
The method croaks on error. Params may be:
=over
=item db_path (string, required)
Path to database, including host name if necessary.
Examples:
=over
=item server:/path/to/db.fdb
=item /srv/db/base.fdb
=back
=item user (string, optional)
User name to be used for the request.
=item password (string, optional)
Password to be used for the request.
=item page_size (integer, optional)
Page size of the newly created database. Should be something supported by the
server. Firebird 2.5 supports the following page sizes: 1024, 2048, 4096, 8192
and 16384 and defaults to 4096.
=item character_set (string, optional)
( run in 1.394 second using v1.01-cache-2.11-cpan-39bf76dae61 )