All databases have a structure that outlines how data will be stored in the database. For example, a simple sales order database might have the structure shown in the following figure, in which the ID columns are used to link the tables.
Sales order database structure
This structure, along with other information such as privileges, is stored in a set of system tables called the database’s catalog, which is also known as a data dictionary.
An application can discover this structure through calls to the catalog functions. The catalog functions return information in result sets and are usually implemented through SELECT statements against the tables in the catalog. For example, an application might request a result set containing information about all the tables on the system or all the columns in a particular table.