Introduction
A specific database management system have a tendency to connect with a specific database language. Database languages are used for reading, manipulating, updating and storing the data in the Database. Database languages used for defining and accessing the Database.
What is Database Languages
A database languages are the set of facts, that are used to specify and operate a database. A database system allow a data-definition language (DDL) to define the database schema and a data-manipulation language (DML) to indicate database queries and updates. The DDL (Data-definition language), and DML (Data-manipulation language) are not two separate languages, they are a part of a single database language, called as the universally used language SQL(Structured Query Language).
SQL (Structured Query Language)
It is a computer programming language. Structured Query Language is a Non-procedural language. Basically, Structured Query Language is used to communicate with database. User can perform operations like, create, insert, update, delete, select the database through Structured Query Language. But multi line's execution process is Structured Query Language .
SQL is having the following 5 sub languages-
- Data-definition language (DDL) - Data-definition or data description language is a syntax for create, alter, rename, truncate, drop, database objects such as table, indices.
- Data-manipulation language (DML) - Data-manipulation language (DML) is a computer programming language and also a syntax for insert, update and delete , the data from a database as per the user requirement.
- Data query language (DQL) - Data query language (DQL) is a syntax for select operation of a database. Other name of data query language is data retrieval language, because it retrieve data from the tables.
- Transactional control language (TCL) - Transactional control language (TCL) commands are used to manage transactions in the database. Operations like commit, rollback and save point comes under TCL.
- Data control language (DCL) - Data control language (DCL) is a syntax alike computer programming language used to control access to data stored in a database. Commands like grant and revoke are comes under this language.
What is Relational Database
A relational database management system is based on the relational model. Relational database is a collection of tables to represent the data and relationship among those data. Relational database also involves a DML or DDL. The relational model is today the primary data model for commercial data processing applications. Because of it's simplicity, the relational model has primary position in every programmers life because it's eases the job, compared to earlier data model's like hierarchical model and network model, relational model is so simple.
Structure of relational databases
Relational database is a collection of tables. Each and every table has multiple columns and each column has a unique value. It's not rigid to see how tables may be stored in files.
What is Database Design
Database systems are designed to manage large bodies of information. Large body of information do not exist in isolation.
Database design mostly involves the design of database schema. The design of a absolute database application environment that encounter the requirements of the enterprise being modeled. Database design involves arrange data and recognize interrelationships.
Database design process
A high-level data model allow the database designer with a conceptual framework in which to identify the data requirements of the database user's, and how the database will be structured to satisfy these requirements. The starting phase of database design, then, is to characterize fully the data needs of the expected database user's. The database designer have to interact greatly with domain experts and user's to carry out this task. The result of this phase is a specification of user requirements. What actually are the requirements of the client (user).
In the next phase, the designer select a data model, and by applying the concepts of the selected data model, convert these requirements into a conceptual schema of the database. The schema developed at this conceptual-design phase gives a complete overview of the enterprise. Then the designer check the schema and assure that all the requirements of the client are satisfied or not in schema ,designer also check the design to remove any unnecessary Features. The main focus of the designer at this point is on describing the data and their relationships, rather than on identifying physical storage details.
What is normalization in DBMS
Normalization is a another method to design a relational database. The objective is to generate a set of relation schemas that allow us to store information without unwanted redundancy, further also permit us to retrieve the data effortlessly.
The objective is to design schemas that are in suitable normal form. To decide whether a relation schema is in one of the advantageous Normal forms, we need extra information about the real-world enterprise that we are creating with the database.
To acknowledge the need for normalization
- Repetition of information (duplicate data)
- Inability to represent certain information
Normal forms further categorized
- 1NF(First normal form)
- 2NF(Second normal form)
- 3NF(Third normal form)
- BCNF(Boyce & Codd normal form)
1NF(First normal form) - The first normal form requires that a table assures the following conditions:
- Rows are not ordered.
- Columns are not ordered.
- There is duplicated data.
- Row-and-column intersections always have a unique value.
- All columns are “regular” with no hidden values.
2NF(Second normal form) - An entity is in a 2NF if all of its attributes be dependent on the whole primary key. So this means that the values in the different columns have a dependency on the other columns.
- The table must be already in 1 Normal Form and all non-key columns of the tables must be dependent on the primary key.
- The partial dependencies are removed and placed in a separate table.
3NF(Third normal form) - The third normal form declares that you should remove fields in a table that do not depend on the key.
- A Table is already in 2 normal form.
- Non-Primary key columns shouldn’t be dependent on the other non-Primary key columns.
- There is no transitive functional dependency.
BCNF(Boyce & Codd normal form) - BCNF is the leading version of 3NF. It is precise than 3NF.For BCNF, the table should be in 3NF.
Conclusion
we’ve talk over details of the Relational Database Management System (RDBMS).concepts like, Database Normalization (1NF, 2NF, and 3NF,BCNF), and database languages.
Once more, the basic knowledge of database normalization always assists you to know the relational concepts, a need for multiple tables in the database design structures and how to query multiple tables in a relational world.