Databases rank among the most significant structural elements of the World Wide Web today. Lying in the basis of the majority of the content-driven websites and applications, databases serve a special mission - to provide a well-organized mechanism for data manipulation. The database approach in website/application development now rules the web by offering a quick and automated way for the information to be stored, managed, deleted or retrieved. Databases' powerful set of capabilities has determined the introduction of dynamic websites, which has opened a new page in the evolution history of the web.
What is a database?
What do databases actually represent? As we all know, genius things are simple. The same holds true for databases. A database is a table consisting of columns (fields) and rows (records) where each column contains a specific attribute and each row features a certain value for the corresponding attribute. The number of columns within a single table depends on how many different types/categories of information we need to store within a database, while the number of rows is defined by the quantity of the objects that have to be introduced categorized records for. This kind of simple organization of the data in database tables allows for a computer program to quickly select and handle the necessary pieces of information.
Database management systems (DBMS)
The communication between databases and computer programs working with them is executed through a database management system (aka DBMS). The latter represents a set of software programs that accept data requests from the application program and instruct the operating system how to handle the requested information. This is done through a variety of control operations that a DBMS supports, such as organizing, storing, deleting or retrieving the data in a database. All these actions are executed through specific SQL commands. Users can also easily add new data categories/attributes to the database without causing any system interruptions. Database management systems work with all basic database models available such as the network model and the relational model.
Due to the databases' fundamental role in running dynamic websites the database approach is used on practically every new website appearing on the World Wide Web today. On commercial websites, for example, databases are used to store and manage various data such as visitors' log-in information, purchase details, order logs, company reports, pricing schemes, etc. They are usually managed with the help of Enterprise DBMSs that are intended to handle large amounts of data. The database use on personal websites is crucial in a variety of cases where regular content updates are necessary such as in blogging, or when setting up photo albums, community websites, etc. Here, the management is done through Personal DBMSs
Flat type databases
In flat type databases, each line can hold only one record. They are most commonly used in plain text format. Due to their simplicity, they are very quickly accessed or queried, which makes them very useful for simple tasks.
Hierarchical Databases
The hierarchical database model represents a tree structure, and a very good association is Windows's File Explorer. To explain it better, we can use the parent - child structure. Each parent can have as many children as he/she wants, but each child has only one parent. The most popular hierarchical database is the IMS (Information Management System), created by IBM.
Relational Databases
The most popular database type, widely used on the World Wide Web. In them, information is easily stored and queried. In a relational database, the data is stored in tables. New information can be added without the need for table re-organization.
In a relational database, there can be an infinite number of tables, each table containing different, though related, information. If we create a database called "user details", in there we can have several tables to keep different sets of information - a table for the personal user details, a table for his/her login information, a table containing the services ordered, a table for his/her account usage, etc. These tables do not need to be in a specific structure, like with the hierarchical database, since they are equally important.
The most famous relational database standard is the SQL language, on which several database software programs are based, among them MySQL and PostgreSQL.