in reply to DBI AutoCommit clarification

The meaning of AutoCommit becomes clearer if you look at the documentation for the commit method (Relevant verbage highlighted):

commit

$rc = $dbh->commit or die $dbh->errstr;
Commit (make permanent) the most recent series of database changes if the database supports transactions and AutoCommit is off. If AutoCommit is on, then calling commit will issue a ``commit ineffective with AutoCommit'' warning.

I believe the book is attempting to distinguish between the condition where AutoCommit is UNDEFINED and the example where AutoCommit is set explicitly.

A better explanation is in the comment below, in the documentation of "Transactions":

$dbh->{AutoCommit} = 0; # enable transactions, if possible