Chapter 16. Simple Databases
Databases permit us to allow data to persist beyond the end of our program. The kinds of databases we’re talking about in this chapter are merely simple ones; how to use full-featured database implementations (Oracle, Sybase, Informix, mySQL, and others) is a topic that could fill an entire book, and usually does. The databases in this chapter are those that are simple enough to implement that you don’t need to know about modules to use them.[1]
DBM Files and DBM Hashes
Every
system that has Perl also has a simple database already available in
the form of DBM files. This lets your program store data for quick
lookup in a file or in a pair of files. When two files are used, one
holds the data and the other holds a table of contents, but you
don’t need to know that in order to use DBM files. We’re
intentionally being a little vague about the exact implementation,
because that will vary depending upon your machine and configuration;
see the AnyDBM_file
manpage for more information. Also,
among the downloadable files from the O’Reilly website is a
utility called
which_dbm,
which tries to tell you which implementation you’re using, how
many files there are, and what extensions they use, if any.
Some DBM file implementations (we’ll call it “a file,” even though it may be two actual files) have a limit of around 1000 bytes for each key and value in the file. Your actual limit may be larger or smaller than this number, but as long as you aren’t trying to ...
Get Learning Perl, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.