Relational databases store data in tables (relations) that are two dimensional. The tables have rows (records or objects) and columns (fields or attributes). Data items at an intersection of a row and a column are called a cell and consist of attribute values. Data stored is simple data such as integers, real numbers or string values. Multiple values may not be stored in one cell. Relational database tables are "normalized" so data is not repeated more often than necessary. All table columns depend on a primary key (a unique value in the column) to identify the column. Once the specific column is identified, data from one or more rows associated with that column may be obtained or changed.
Relational databases are sets of tables. One table file is not a relational database. A relational database server is not the same as a relational database. A relational database can be a file with sets of tables. The relational database server includes the ability to service requestesto get or change data from remote clients.
Relational database servers use Structured Query Language (SQL), as a data manipulation language to interface between itself and the clients. SQL is the standard for getting and storing data in an RDBMS. For information about SQL, see the "Beginner's SQL Guide".
Relational database servers provide:
- Data Management
- Transaction processing
- Data integrity - Provides for multiple access at the same time (concurrency) between multiple processes/users. This is done so data is not displayed nor saved in a fashion where one change is lost. Various locking mechanisms are used to support this.
- Data backup and recovery.
- Data security - Provides for user authentication, and levels of data access privileges.
In relational databases, the data is not arranged in any particular order in tables. The data in tables requires keys for identification of rows. Each table has rows and columns. Sets of values in a row may describe a particular item such as customers. Consider the following table:
|Customer ID||Name||Street Address||City||Zip Code||Phone||e-mail|
|112304||John Brown||123 Straight Lane||Paradise||MIemail@example.com|
|134056||Tim Smith||321 Curved Ave||Hollywood||MDfirstname.lastname@example.org|
|234902||Sue Jones||213 Hill Road||Knoxville||TNemail@example.com|
|092387||George Abernathy||555 North Road||Smalltown||FLfirstname.lastname@example.org|
|187462||Tom Jenkins||666 South Lane||Cold||MNemail@example.com|
|108976||Kim Adams||456 Peachtree Lane||Atlanta||GAfirstname.lastname@example.org|
|059385||Chris Christopher||859 East Road||Nicetown||MSemail@example.com|
|140763||Jim Thompson||307 West Ave||Bigcity||NDfirstname.lastname@example.org|