This information is designed especially for small mission-based organizations (nonprofits, non-governmental organizations or NGOs, civil society organizations, public sector agencies, etc.) with very limited staffing and funds.
The following terms are used repeatedly in this overview.
A flat database is very easy to manage, because it has all of its information stored in one source. You can have relational data on a flat database, meaning that some or all of the data from a flat database can be used in a relational database. For instance, a relational database may pull information from the flat database, combining it with data from another database, so that you can see how many board members have email addresses, or how many donors are also volunteers. A flat database should allow you to create a variety of different ways to look at the data (input screens, reports, mailing lists, etc.).
The limitation of a flat database is usually not in the number of records you can put on (for instance, how many volunteers you can track), but in how much information you can track per record. Limits of a flat database are usually realized the more information you need to track about each individual person (a record), rather than the number of people (records) you need to track. As time passes, different people at one organization need to track more and more information about each record, or view it in very different ways. For instance, one staff member may want to track meeting attendance and program involvement in detail, while another may need detailed information about each record's donation history.
You can create a different flat database for each staff person's need, but this will eventually make it very difficult to find out all information about one person quickly; imagine having to look on one database for board information, another for event attendance information, another for publications they've received, another for their volunteer involvement, and you get the idea.
There are two ways to avoid this project entirely: by requiring everyone to input their information into one database, or, requiring everyone to use the same software to create their databases, and then making these databases relational, so that you can pull from multiple databases to view information for a single record. With a relational database, users do not see the separate databases that have been related together when viewing a record's information; instead, users see different pieces of information about a single record (person), without being able to see which databases each piece of information is being pulled from. Only an advanced user will be able to tell that, when she is looking at one record, she is also looking at more than one database.
Upgrading from a flat database to a relational database allows for a great deal of growth for information-tracking. A good relational database allows for endless sorting and viewing options; virtually any combination of information in any form can be generated from a good relational database.
To join a database, there must be a field that has something unique about each and every record in a database. It's best to create a field specifically for the joining process; this field should hold a unique identification number. When a new record is added, it should automatically assign a unique number in the MAIN database; this number is then copied automatically to every other joined database. It's also a good idea to create a function that makes the first name, last name and company affiliation also copy to each database, and changed automatically and simultaneously. If a record is deleted, it is also deleted from all other databases.
Also have a look at the online support pages for whatever software you are using. There may have their own tutorials about database basics as well.
Develop your systems of tracking "people" information based on how your staff wants to use information about clients, volunteers, donors and potential audiences. The first step in deciding WHAT information you need to track is to find out what each staff member wants to be able to do with the database. Fund-raising staff may want a list of volunteers each quarter who have also made financial contributions; the executive director may want to occasionally see what city and county officials have attended your organization's events; the marketing staff may want to know to know weekly who or what referred people who call your organization. If you don't know what staff members need out of your information-tracking systems, ASK.
Deciding what information needs to be tracked will help you decide what fields to create to track information about people in your database(s).
These tip sheets may also help you:
Return to Index of Coyote Communications' Technology Tip Sheets
Disclaimer: No guarantee of accuracy or suitability is made by the poster/distributor. This material is provided as is, with no expressed or implied warranty.
Permission is granted to copy, present and/or distribute a limited amount of material from my web site without charge if the information is kept intact and without alteration, and is credited to:
Otherwise, please contact me for permission to reprint, present or distribute these materials (for instance, in a class or book or online event for which you intend to charge).