A query is a set of computer instructions that directs the database program to perform one or more tasks. Databases can also produce printed or electronic reports using data held in its tables or data generated by its queries. 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. 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.