Attributes for Handles

This section lists the attribute keys and values that can be given in many Perl DBI methods, as indicated in the previous section with %attri in each method’s syntax. The basic syntax to set an attribute is $handle->attribute=>'setting‘. Attribute key/value pairs are separated by commas and are all contained within a pair of curly braces. For example, to instruct DBI not to return error messages for a database handle, you would do the following when it’s created:

my $dbh = DBI->connect('DBI:mysql:bookstore:localhost',
   'paola','caporalle1017', {RaiseError=>0});

To retrieve a setting, use $handle->{attribute}. This can be stored to a variable or printed:

print "dbh->{RaiseError=>" . $dbh->{RaiseError} . "}";

If you try this simple line of code, keep in mind that an attribute set to 0 will return an empty value.

Attributes for All Handles

You can use the following attributes with both database handles and statement handles:

Active (boolean, read-only)

This attribute indicates that the handle is active. In the case of a database handle, it indicates that the connection is open. The disconnect() method sets this attribute to 0 in a database handle; finish() sets it to 0 in a statement handle.

ActiveKids (integer, read-only)

This attribute provides the number of active handles under the handle that employed the attribute. If called by a driver handle, the number of database handles will be returned. If called by a database handle, the number of active statement handles will ...

Get MySQL in a Nutshell, 2nd Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.