Home
Search Perl pages
Subjects
By activity
Professions, Sciences, Humanities, Business, ...
User Interface
Text-based, GUI, Audio, Video, Keyboards, Mouse, Images,...
Text Strings
Conversions, tests, processing, manipulation,...
Math
Integer, Floating point, Matrix, Statistics, Boolean, ...
Processing
Algorithms, Memory, Process control, Debugging, ...
Stored Data
Data storage, Integrity, Encryption, Compression, ...
Communications
Networks, protocols, Interprocess, Remote, Client Server, ...
Hard World Timing, Calendar and Clock, Audio, Video, Printer, Controls...
File System
Management, Filtering, File & Directory access, Viewers, ...
|
|
|
dbmopen HASH,DBNAME,MODE
[This function has been superseded by the tie() function.]
This binds a dbm(3), ndbm(3), sdbm(3), gdbm(), or Berkeley
DB file to a hash.
HASH is the name of the hash. (Unlike normal open, the first argument is
NOT a filehandle, even though it looks like one).
DBNAME is the name of the database (without the .dir or .pag extension if any). If the database does not exist, it is created with protection specified by
MODE (as modified by the umask()). If your system supports only the older
DBM functions, you may perform only one dbmopen() in your program. In older versions of Perl, if your system had neither
DBM nor ndbm, calling dbmopen() produced a fatal error; it now falls back to sdbm(3).
If you don't have write access to the
DBM file, you can only read hash variables, not set
them. If you want to test whether you can write, either use file tests or
try setting a dummy hash entry inside an eval(), which will
trap the error.
Note that functions such as keys() and values() may return huge array values when used on large
DBM files. You may prefer to use the each() function to iterate over large
DBM files. Example:
# print out history file offsets
dbmopen(%HIST,'/usr/lib/news/history',0666);
while (($key,$val) = each %HIST) {
print $key, ' = ', unpack('L',$val), "\n";
}
dbmclose(%HIST);
See also the AnyDBM_File manpage for a more general description of the pros and cons of the various dbm
approaches, as well as DB_File for a particularly rich implementation.
Source: Perl builtin functions Copyright: Larry Wall, et al. |
Next: defined EXPR
Previous: dbmclose HASH
(Corrections, notes, and links courtesy of RocketAware.com)
Up to: Persistent data storage, databases Up to: Locating Data
Rapid-Links:
Search | About | Comments | Submit Path: RocketAware > Perl >
perlfunc/dbmopen.htm
RocketAware.com is a service of Mib Software Copyright 2000, Forrest J. Cavalier III. All Rights Reserved. We welcome submissions and comments
|