Author: REHSACK
Date: Mon May 24 10:47:46 2010
New Revision: 14027
Modified:
dbi/trunk/lib/DBD/File.pm
Log:
- correct dbm_lockfile attribute into f_lockfile
- some documentation fixes
Modified: dbi/trunk/lib/DBD/File.pm
==============================================================================
--- dbi/trunk/lib/DBD/File.pm (original)
+++ dbi/trunk/lib/DBD/File.pm Mon May 24 10:47:46 2010
@@ -752,8 +752,8 @@
$meta->{f_encoding} = $dbh->{f_encoding};
exists $meta->{f_lock} or
$meta->{f_lock} = $dbh->{f_lock};
- exists $meta->{dbm_lockfile} or
- $meta->{dbm_lockfile} = $dbh->{dbm_lockfile};
+ exists $meta->{f_lockfile} or
+ $meta->{f_lockfile} = $dbh->{f_lockfile};
defined $meta->{f_fqfn} or
$self->file2table ($meta, $table, $file_is_table, $quoted);
} # init_table_meta
@@ -1016,13 +1016,14 @@
=item f_dir
-This attribute is used for setting the directory where CSV files are
+This attribute is used for setting the directory where the files are
opened. Usually you set it in the dbh, it defaults to the current
-directory ("."). However, it is overwritable in the statement handles.
+directory ("."). However, it is overwritable in the statement handles
+before executing the statements. See L<BUGS AND LIMITATIONS>.
=item f_ext
-This attribute is used for setting the file extension where (CSV) files are
+This attribute is used for setting the file extension where files are
opened. There are several possibilities.
DBI:CSV:f_dir=data;f_ext=.csv
@@ -1033,7 +1034,7 @@
your table is named C<table.csv>, which is probably not what you wanted. The
extension is always case-insensitive. The table names are not.
- DBI:CSV:f_dir=data;f_ext=.csv/r
+ DBI:DBM:f_dir=data;f_ext=.db/r
In this case the extension is required, and all filenames that do not match
are ignored.
@@ -1188,7 +1189,7 @@
=head1 KNOWN BUGS AND LIMITATIONS
-=over 8
+=over 4
=item *
@@ -1208,6 +1209,26 @@
via an SQL statement or via C<< table_info >> and is not destroyed
before the table is dropped or the driver handle is released.
+Following attributes are conserved in those data area and will
+evaluated instead of driver globals:
+
+=over 8
+
+=item f_ext
+
+=item f_dir
+
+=item f_lock
+
+=item f_lockfile
+
+=back
+
+For DBD::CSV tables this means, once opened 'foo.csv' as table named 'foo',
+another table named 'foo' accessing the file 'foo.csl' cannot be opened.
+Accessing 'foo' will always access the file 'foo.csv' in memorized
+C<< f_dir >>, locking C<< f_lockfile >> via memorized C<< f_lock >>.
+
=item *
When used with SQL::Statement and the feature of temporary tables is
@@ -1245,6 +1266,7 @@
=head1 SEE ALSO
-L<DBI>, L<Text::CSV>, L<Text::CSV_XS>, L<SQL::Statement>
+L<DBI>, L<DBD::DBM>, L<DBD::CSV>, L<Text::CSV>, L<Text::CSV_XS>,
+L<SQL::Statement>, L<DBI::SQL::Nano>
=cut
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.