Saturday, July 21, 2012

What is a database?

This is a little difficult to explain in basic terms - at least for me but I am going to try my best. Database is for storing data. You would ask me, then why do we have a Hard Drive, Flash Drive, CDs, Floppy Disks and a Computer. So Database is for storing data within your Storage medium. The next question is, what data? Say you write something on Microsoft word, that is data. You compose an email that is data. Anything that can occupy at least a 'bit' space. All information is finally converted to binary '1's and '0's. This is the only way information can be stored in a storage medium. For example, when you store the number 8 - the binary equivalent 1000(read as 'One' 'Zero' 'Zero' 'Zero') gets stored. When you type a text in MS Word, you are storing data in a word file. When you use MS Excel, you are again storing data within the excel file. All these files contain data. Now you can relate that a database is similar to file. But there are vast differences. MS Word is not same as MS Excel and so is a Database not similar to any of these. But the overall concept is the same.

A Database stores information in an organized order. Like what? Say you would like to store the information about the employees of an organization. A database table will look like this. 

Emp Id
Name
Designation
Salary
E-1001
ABC
CEO
1,000,000
E-1002
XYZ
MANAGER
100,000
E-1003
MNO
Programmer
20,000
E-1004
KLM
Team Leader
40,000

If you have to store information in this format and retrieve back in the same format with E-1001 referring only and only to Name ABC and Designation CEO, then you would have to use the appropriate software which is a Database. Otherwise softwares which are not designed to understand that ‘relation’ between data will not be able to fetch back the exact information when you want to use it. 

Say you type the above content in a Notepad, the data would look like this (below). Because Notepad is only a Text Editor (to write and store text information), it will not understand in first place that E-0001 is Emp Id. Notepad does not provide the feature to understand ‘relation’ between data. No two lines or words are linked in anyway. It is only to type content. Absolutely no thinking capacity incorporated. Like you writing something on a paper. As a user you will have to remember that layout and relations, and understand that MNO, which is the next to E-1003 could be the Employee Name. 

Emp Id Name    Designation      Salary
E-1001 ABC     CEO     1,000,000
  E-1002 XYZ      MANAGER        100,000
  E-1003  MNO     Programmer      20,000
 E-1004  KLM     Team Leader     40,000

Whereas, it is possible and the basic functionality of a database to fetch all the details if just E-0001 is given. Because it understands that ABC, CEO and 1,000,000 correspond to E-0001. There are ways to write program in a database also and play with the data. They are called PL/SQL (Procedural Language/Structured Query Language). I will not get into any more details at this point. I am going to be covering these in detail in my later posts.

All information in stored in the database in an organized manner with relations like in the table above. So you know cannot use a database when you have to write a simple letter - instead MS Word should be your perfect choice!!

No comments:

Post a Comment