Aim: I aim to give a good overview, and insight, into making good flat database structures in perl without too much hassle. I will be using a telephone database as an example. The following fields will be used: ID Name Address Telephone number Note: You will require an intermediate perl skill level. Tip: the correct database terminology for a 'data section is a field. 'Rows' in a database are considered 'records'. What are flat databases? A flat database is a database within a single file. A database is a set of data within a structure (in memory or a file, for example). All data stored in a database, is stored within validity constraints - that, in simple terms, means the data stored, is validated, and only stored if it passes a validation check. Against popular belief, flat databases can be linked to another database, or joined; but for this tutorial, I will cover flat databases, without joining, in perl.