Using a database is a more sophisticated way of storing, retrieving, displaying and analysing data than using a spreadsheet. Database software has many potential applications for electoral purposes. For example, databases can be used for election results, party and candidate regulation, inventory control, polling place management, staffing and finance.
Before the inclusion of powerful database programs in office automation suites in the 1990s and 2000s, database programming tended to be the exclusive domain of professional computer programmers. However, the development of more user friendly database programs has given the lay user the ability to develop relatively complex databases without professional information technology qualifications. This has given election management bodies (EMBs) the ability to develop databases in-house.
Data is stored in a database in tables. Each table will consist of one or more records. Each record may consist of one or more fields. Each field usually relates to a particular type of data. For example, a table named 'Staff' may contain a record for each staff member. For each record, there might be fields for: First Name; Last Name; Address; Employment Number; Position Held; and so on.
Data stored in tables can be analysed, manipulated, updated, deleted, displayed and printed by applying computer instructions to the data. These instructions are usually applied by use of queries. A query is a set of computer instructions that directs the database program to perform one or more tasks. For example, a query could ask the 'Staff' table to find all employees named Smith and display them according to the alphabetical order of their first names.
Forms in a database are graphical on-screen representations of data that display data in user-friendly form and allow users to view and manipulate data without having to use the limited spreadsheet style presentation of flat tables.
Databases can also produce printed or electronic reports using data held in its tables or data generated by its queries.
There are five main types of database:
- flat
- network
- hierarchical
- relational
- object-oriented
Flat databases are similar to spreadsheets, with records included in simple lists. The flexibility of flat databases is limited, and they are only suitable for relatively simple tasks, such as mail merges.
Hierarchical databases have a treelike structure, with each level of records branching off into a set of smaller categories. This type of database is also relatively limited, as they only contain single links between sets of records at different levels, restricting flexibility.
Network databases contain multiple linkages between sets of data, allowing for greater flexibility.
Relational databases go further than network databases in allowing relations between various sets of data to be used to create complex queries. For example, the 'Staff' table could be linked to a 'Position' table to give a full description of the position occupied by each staff member, and the 'Position' table could be linked to a 'Payroll' table to give the salary to be paid to each staff member.
Object-oriented databases have similar attributes to relational databases, however more complex data structures are used, called 'objects'. Object-oriented databases are the most flexible and adaptable type of database.
Most modern databases are relational or object-oriented, or a combination of both.
Database programs supplied with modern office automation software are very powerful and allow relatively unskilled EMB staff to easily produce simple databases. Skilled users can develop very sophisticated products. For example, an electoral authority could use database programs for:
- entering, storing and using electoral roll data
- automating various parts of the election process, such as issuing and receiving postal votes
- capturing and analysing election results data
- storing and manipulating employee records
- automating large scale personalised mail-outs to clients and staff
- keeping inventories
- recording candidate details and facilitating printing of ballot papers, and reporting of election donations and spending