Monday, February 11, 2013

Relational Database Theory


A relational database is “a database structured to recognize relations between stored items of information” (Oxford).  According to Microsoft’s MSDN library, a relational database theory “defines a process called normalization, which ensures that the set of tables you define will organize your data effectively”.  In a relational database, the data is collected into tables which allows it to be one of the most effective ways at organizing data.  These tables, in relational database theory, are called relations.  Each table represents a class of objects.  On Microsoft’s website, they call out the following example: “ a company may have a database with a table for employees, another table for customers, and another for stores”.  As with traditional tables, relational database tables have rows and columns, which in relational database theory are classified as tuples and attributes, respectively.  In the example that Microsoft provided above, the tuple would be an employee, customer X, or store #xxx.  The attributes in Microsoft’s example would be names, address, phone number, email address, and social security number (employee table) or credit card number (customer table).  As mentioned above, relational database theory is the most effective way that data is organized because of the normalization process.  Although there are several ways that tables can be organized, normalization optimizes the organization of the data.

http://static.ddmcdn.com/gif/relational-database-chart.jpg
Figure 1: Relational Database Table (HowStuffWorks).

The first relational database was created in 1970 by E.F. Codd, a researcher at IBM.  When databases were first created, they were stored in one text file called a tab delimited file.  In this type of file, each entry was separated by a special character and each entry would contain multiple pieces of information about objects that were grouped together (HowStuffWorks).  The table shown above would have the following file:

Lname, FName, Age, Salary|Smith, John, 35, $280|Doe, Jane, 28, $325|Brown, Scott, 41, $265|Howard, Shemp, 48, $359|Taylor, Tom, 22, $250
Figure 2: Tab delimited file (HowStuffWorks).

Although information is able to be determined (once the user understands how to gather their information based on how the data is presented), it is much easier to use the table shown in Figure 1 rather than the text file that is shown in Figure 2.  Relational databases are more efficient than the original tab delimited file because “ it uses the relationship of similar data to increase the speed and versatility of the database” (HowStuffWorks).  Today, relational databases use structured query language (SQL), which is the computer language that is used for all databases, including Microsoft Access.  According to Wang Chunyi, the software used is called the Relational Database Management System (RDBMS) which responds to user commands.  This method is beneficial to the user because it can reduce entry errors as mentioned in Wang C. and Gayaneh G.'s blogs.  Errors are reduced "because each item is stored only once, so once you can find the specific error you made, you can correct a series mistake"

"Relational Database." Definition of Relational Database. Oxford Dictionaries. <http://oxforddictionaries.com/definition/english/relational+database>.
"Relational Database." Relational Database Components. Microsoft MSDN. <http://msdn.microsoft.com/en-us/library/aa174501(v=sql.80).aspx>. 
"What Are Relational Databases?" HowStuffWorks. http://computer.howstuffworks.com/question599.htm

No comments:

Post a Comment