Separation of Concept
When we consider a Relational Database we can illustrate it as a set of conceptual components and interfaces. This helps us get a better overview of how each of the elements to be learnt fit together and interact with each other.
- Database – can be considered as a collection of related data managed as a single unit
- DBMS – a collection of applications providing a number of vital functions for the database
The other four are our perception of design, implementation, use and maintenance of the database and how we interact with it to achieve our goals of efficient data storage and information retrieval. These are the areas we will be looking at within this unit but for now they are:
- Design – Allows us to model our business and translate that into a database design (database schema). For this we use two design techniques.
- Entity Modelling – Top-down design through information modelling
- Normalisation – Bottom-up design through data modelling
- Implementation – Once the database schema has been realised we use the relational database access language, Structured Query Language (SQL). More specifically we use a subset of SQL called the Data Definition Language (DDL) to create the database schema in the database in the form of relational tables.
- Database Queries – Once the database has been created we need a means of adding, removing, updating and querying the data. This is achieved normally through some form of Application Programming Interface (API) or Database Client using another subset of SQL called Data Manipulation Language (DML)
- Database Administration – Administration tasks are carried out by a Database Administrator (DBA). The DBA is responsible for the maintenance and security of the database and though might use DDL and DML for maintenance, their main tool of control is the third subset of SQL called the Data Control Language (DCL) which allows the DBA to set up security rules about how the data might be accessed and by whom.