We use databases, when it's necessary to update data easily and quickly. E.g. a businessman could be interested in creating a new product in his catalog, meaning the catalog is always updated when it goes to print. Or a webmaster wants the ability to update the news on the front page quickly. Some of the reason a database makes updates like these quick is, that they are well organized.
When we discuss databases, we normally mean relational databases. This kind of databases was invented in 1970. To make a new relational database, one has to define the tables, rows and columns. With a relational database, it is not necessary to rewrite the whole program, just because a table has a new column - that is some of the reason this type of database gained popularity originally.
Many companies manufacture databases. IBM manufactures DB2. Oracle manufacture databases, typically knows as Oracle. The same goes for the products of Sybase. Microsoft manufactures e.g. Access (Jet) and SQL Server. Borland manufactures Interbase. MySQL is an open source database, manufactured by MySQL AB.
A database is just a file - just like a picture, an XHTML document or a Star Office Writer document. An Access file could be named vacation.mdb - an InterBase file could be names horses.gdb - sometimes there's more than one database in the file - sometimes you can't normally see the file in the file system. Just like the other types of files mentioned, there needs to be a program to interpret the contents of the file - for databases this type of program is called DBMS: DataBase Management System. Typically you speak SQL with your DBSM - SQL is a language, developed specially for conversations with databases. DBSM also has another task - to make sure, the database can have multiple simultaneous users. Jet can't do this, so Access databases are not recommended for websites, where we typically hope for many hits. There can be another program on the outside of the DBMS. E.g. Jet has a program called Access, with the purpose of making it possible not to type a lot of SQL, as almost anything can be done graphically. If you write a program in PHP or ASP, connected to a database, you have also made a shell for the DBMS. E.g. somebody wrote a program called phpMyAdmin, which you can install on your webserver, so there's a web interface for the MySQL database, that doesn't normally have a shell.
Concept last updated: 03/07 2003.
- Databaseteori; Alf (obl.) - 1.1.1 og 1.1.2