RDBMS : The relational model has established itself as the primary data model for commercial data processing applications. A substantial theory exists for relational databases. The relational model is now being used in numerous applications outside the domain of traditional data processing like file based systems.
Perhaps the simplest approach to data modeling is offered by the Relational Data Model, proposed by Dr.Edgar F.Codd of IBM in 1970. The model was subsequently expanded and refined by its creator and very quickly became the main focus of practically all research activities in databases. The basic relational model specifies a data structure, the so-called Relation, and several forms of high-level languages to manipulate relations.
The term relation in this model refers to a two-dimensional table of data. In other words, according to the model, information is arranged in columns and rows. The term relation, rather than matrix, is used here because data values in the table are not necessarily homogeneous (i.e. not all of the same type as, for example, in matrices of integers or real numbers). More specifically, the values in any row are not homogeneous. Values in any given column, however, are all of same type.
A relation has a unique same and represents a particular entity. Each row of a relation, referred to as a tuple, is a collection of facts (values) about a particular individual of that entity. In other words, a tuple represents an instance of the entity represented by the relation.
The characteristics of relational data structure have been refined and enhanced. An RDBMS based on relational model has some important properties. They are:
•RDBMS represents data in the form of two-dimensional tables.
•It does not hard-bind relationship between the tables within the database
•RDBMS shields the physical implementation from the user of the database.
•It gives information about content and structures of tables.
•RDBMS also supports null values.
Note: A query language is required for the user to interact with the database, so that the user can retrieve, store, remove and change information present in the database. These languages are typically higher than of any typical procedural language. Query languages are broadly classified into PROCEDURAL and non procedural languages. In a non procedural language, we emphasize on what is required and we do not specify how it has to be obtained, whereas in a procedural language we have to emphasize on what is required and also how it has to be achieved. One such procedural language used in relational algebra.