Chapter 16

Databases

WHAT YOU WILL LEARN IN THIS CHAPTER:

  • Understanding Perl’s DBI module
  • Connecting to databases
  • Selecting data from databases
  • Using binding parameters
  • Changing your data
  • Using transactions

WROX.COM CODE DOWNLOAD FOR THIS CHAPTER

The wrox.com code downloads for this chapter are found at http://www.wrox.com/remtitle.cgi?isbn=1118013847 on the Download Code tab. The code for this chapter is divided into the following major examples:

  • example_16_1_fetch.pl
  • lib/MyDatabase.pm
  • listing_16_1_make_database.pl
  • listing_16_2_populate_database.pl
  • listing_16_3_select.pl

A database is a place to store your data. It can be a regular file, a sheet of paper, or a hierarchical database such as IMS (no longer widely used). Today, when most people say “database,” they’re referring to what most people call relational databases. If you have a background in programming, you’ve probably heard of several of them, such as MySQL, PostgreSQL, Oracle, Sybase, and many others. Each of these offers a variety of different features, some favoring data integrity, others focused on performance, and some striving for both.

In this chapter you acquire a minimum knowledge of using databases in Perl. You will use the SQLite database and Perl’s DBI module. I chose SQLite because it’s easy to install and Perl’s DBI module because it is the standard for connecting to databases. There are other tools, such as object-relational mappers (ORMs) that try to hide some of the complexity of databases, but under ...

Get Beginning Perl now with O’Reilly online learning.

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