| Your big
chance. If you are like a
lot of people, you probably envy those savvy PC users who have everything about their
work, home, the meaning of life, etc., in a PC database. Now heres your chance to
catch up: just read this article. Indeed, if you read further you will get a definition of
"database", a description of the parts of a software database, a distinction
from spreadsheets, and some suggestions on when databases might be useful. The truth is you
have been using databases all your life. A simple address book is an
example of a database. So is a box of recipe cards.
In general, a database is made up of one
or more tables of information and, optionally, some means for adding to the table,
extracting data from the tables, or reporting some data from the tables. Each table
consists of one or more rows ("records"), each with several "fields"
or columns. Although these days all these are probably on a computer, they dont
necessarily have to be.
It all began
long ago. Years ago a
company made a clever product. It was just a box full of 3 by 5 cards. Along the top of
each card was a row of punched holes, maybe an eighth of an inch in diameter and a quarter
inch down from the top of the card.
You'd put, say, a customers name,
address and phone number (fields) on the card, but then you did something more. If the
customer fit "category A" which you decided on you left Hole A
intact. If not, you clipped off the card above hole A to make it a notch instead of a
hole. You did the same for another dozen or so holes, and similarly on every card.
If you wanted to contact all of category
A, you'd put something like a knitting needle through the cards where hole A was, from
front to back of the stack of cards. Everyone in category A (having hole A intact) would
remain on the knitting needle, ready to be addressed or phoned, but no one else. This was
an example of a table plus a query.
Anyway,
back to PCs. I said that a database has one or more tables.
The software that can manage a database on a PC can usually manage "related"
tables. What are related tables? There are a few different types, but let me use examples
to make this clearer.
Lets say your company has hundreds
of pieces of equipment and furniture. Each is kept in a single list of an equipment
number, date acquired, description, and the department it is assigned to with the name and
phone number of the department head and of the department administrator.
Look it
up: One time saver, if the list is on a PC, is a "lookup
table." This would be a separate table with a short code or abbreviation for each
department, and the name and phone number of the department head and of the department
administrator. The list of equipment shows just the department code. No need to write down
all the other stuff about the department, nor to change it when a department gets a new
administrator. The stuff about the department is in the Department table just
change it once.
Another
example: a table of clients, including personal information to help
you ask the client, when you call, "How is your wife, Marge, and what college is your
son Tom, Jr., going to?" The data about Tom, Sr. like phone number, name of
company, date of last order, etc. is in the "Client" table. But there is
also a "Spouse and Kids" table that lists their names, birthdays, relationships,
favorite flowers and flavors, etc. There is no need to guess how many spaces (rows) to
allow in the main table for "enough" kids. Just use this "related
detail" table.
PC database software such as
Access or Paradox for Windows will let you see just the related records you want,
with the magic of a "form."
You start by building the
"structure" of each table. That means the names of the "fields," such
as Surname, First or Middle Name, Street Address, City, et al. Next, you tell the program
you want a new "form." A form usually shows just one main ("master")
record at a time, to add, edit or just view, for example, one client.
You just tell Access, for example, which
one of the listed tables is your master table. The Access "Wizard" will then
design a form for you, including color and other fancies. You can also have it build a
"subform that shows, for example, the spouse and children, and link it so only
the one clients spouse and kids show up.
It's a
matter of focus. Although typing in the data will take time, all the
preparation can be done in a few minutes, if you first plan out what data you want to
store, and what lookup and detail tables you need. Do your planning with the computer
turned off, and focus on the reports you might later want.
What's
the reason for all this? The purpose of keeping a database is not
just so you can say "I have it all on computer," but to get useful information.
You can extract all kinds of information from your data! Here are two examples: A simple
one is "all the customers in one ZIP," to make it easy to visit them in one day.
Much more complex to construct but maybe more useful is a ranking of the total sales
dollars ordered by customers, grouped by area code, with the largest dollar area code at
the top.
A Query? In
general, to get the information for the examples I just mentioned, or any others, you use
a "query." A query is an instruction to the software of what you want by way of
selecting and aggregating data.
Typically, in a query you have to say which
records you want ("only from ZIP 21045"), which fields you want ("just the
name and phone, not the address"), what totals or averages you want ("sum of
sales volume") and maybe a sort order ("descending sum of sales volume").
Once you get it to do what you want, you can store a query by descriptive name for future
use.
A Report? You
can also use a query as a data source for a "report." A report describes what
you want your output to look like columns or blocks, colors, fonts
all the "pretty printing" your imagination and time allow. You can also save a
report by a descriptive name. A report might even be a personalized letter. The report
modules in Access and Paradox are as easy to use for attractive results as a modern word
processor, and about as easy to learn.
Programming? What
about the dirty word, "programming?" Both Access and Paradox let the user do
complex programmed automation to accomplish a goal. That might include anything from a
simple "Print the monthly sales report when I push this button" to the most
complex conceivable data processing.
Still, you dont have to do any
programming. The capability is there so a professional like me can write complex
applications (suited to your needs) and have them be compatible with a novice users
data in a way that's easy to use.
Some basic
differences.
Spreadsheets and databases (tables) look similar, because both are two-dimensional arrays
of cells containing data. There are differences, and which is better depends on the
"what for." The main difference is every row of a table must look like every
other row. That is not true of a spreadsheet. A spreadsheet cell can hold a formula
involving other cells. That is not true of a database.
An
example is best: If I were doing budgeting, I would capture and
summarize my revenue and expense data in a database (accounting programs are complex
applications of database tools), then transfer the totals I need to a spreadsheet to
analyze and do "what ifs".
It's up
to you. If you ask me what you can do with a computer database I will
say "Whatever you want to, keeping in mind it will store data, let you look at it,
and let you quickly and without error extract and aggregate portions of it to analyze and
report."
Enjoy!
Article
copyright � 1999 Philip L. Marcus. All rights reserved. |