Sunday, April 5, 2009

SQL


SQL stands for Structured Query Language. It represents a database computer language used to manage and structure relational DBMSs. It is the most common language used to interface with databases. It facilitates the retreival of information.

For example, here is a common SQL statement used to find students who earned the grade B in a specific class:


SELECT DISTINCTROR STUDENT_ID, GRADE FROM GRADES

WHERE GRADE = ''B''

ORDER BY STUDENT_ID.


SQL was standardized by ANSI, and then by ISO.


Most implementations of this language include a command-line interface (SQL/CLI), in order for the user to enter the language commands.


Principal SQL language elements include:

-clauses

-expressions

-predicates

-queries

-semicolon


Here is another practical example:

SELECT *
FROM Book
WHERE price > 100.00
ORDER BY title

Sources:

1) Information Systems Today, by Jessup, Valacich and Wade, 2nd ed.

2) http://en.wikipedia.org/wiki/SQL

3) http://www.w3schools.com/sql/default.asp

4) http://www.commentcamarche.net/contents/sql/sqlintro.php3

5)http://www.cnp-x.com/mysql/graphics/MySQL_logo.gif



METADATA



The term Metadata is used to describe pieces of data that are about other data. It is structured data that is used to describe the characteristics of a certain resource. A metadata item can describe an individual set of data, as well as an entire database scheme. Generally, metadata is information that is provided in order to define data content within a software application. Thus metadata could be descriptive of entities, attributes or may include descriptive information about the quality, characteristics and other conditions of a set of data within a DBMS.





The purpose of metadata is to provide context for data. Metadata is used to facilitate the understanding and using of data. Here are a few examples of metadata:


- For a book, metadata are book title, author, date of publication, edition, serial number etc.


-For a picture, metadata include date and time when the picture was taken, place and settings of the camera.





Each metadata schema has a set of characteristics. The following are the most common ones:


-limited number of elements


-name of each element


-meaning of each element.





The most populat metadata schemas are: Dublin Core, AACR2, GILS, EAD, IMS and AGLS.





In order for the metadata to be processed by a computer, encoding programs are used. The most common ones are: HTML, SGML, XML, RDF, MARC and MIME.

Sources:

1) http://en.wikipedia.org/wiki/Metadata

2) http://www.library.uq.edu.au/iad/ctmeta4.html

3) http://www.fao.org/aims/img/metadata_element_set.jpg



DBMS architectures

DBMS are based on different database models. The structure of the database is described by several rules and concepts illustrated by a data model. The most common database models are:








-Network model and hierarchical model: build upon data sets and express hierarchical or network-like structures for the data








-Relational model: defines the database as a collection of inter-related tables which contain all the data




-Other less used models include the object oriented model and the object- relational model.



When designing a database model, the creator must differentiate between two different level of abstraction, and their respective schemes: the logical data scheme and the conceptual data scheme. A conceptual data scheme is independant from the database itself and the computer system used. The logical data scheme describes the data in the Data Definiton Language (DDL) of the respective DBMS.


Two additional schemes need to be taken into consideration in order to explain the architecture of database systems:

- the external scheme describes the types of users that can access the data (individual or group users) and specifies certain constraints related to this subject.

- the internal scheme describes the content of the data and the way to maintain the functionality of the DBMS. Below there is an illustration of the 3-Scheme-Architecture:
Here are 3 examples of DBMS software:
1) FileMaker Pro 10- used for streamlined navigation, beter workflow and saving time
2) STACS- used for serial control
3)BIOCore- integrated molecular dynamics simulation and visualization into the internet for for long distance collaborations in the field of structural biology

Sources:
1) Information Systems Today, by Jessup, Balacich and Wade, 2nd. ed.
2)http://www.gitta.info/DBSysConcept/en/html/DBMSArchitec_learningObject1.html
3)http://cat.inist.fr/?aModele=afficheN&cpsidt=7624533
4)http://www.filemaker.com/index.html
5)http://www.ks.uiuc.edu/Development/biosoftdb/biosoft.cgi?&category=9



Advantages of using DBMS


There are many advantages of DBMS over files processing. The main advantage is the fact that files hold repetitive data about entities, while DBMSs can be programmed to eliminate all redundancies. Thus, having single copies of data assures the minimization of data storage. To illustrate this advantage with an example, in the file storage system, when an address of a customer or supplier was changed, someone had to modify this information in every single file that contained data about the respective entity. This represented a tedious and error prone process. DBMSs help us manage tremendous quantities of tables, inter-linked within a single system. This eliminates unnecessary redundancies and insures that change is automatically made for every single part where the information appears. For example, if a student changes his address, the DBMS will automatically change this information in all the files pertinent to that student (course selection, permanent record etc.). There are many other advantages of DBMSs over file processing, listed below:


  • flexibility: programs and data are independent, which makes it easier to alter software to the changes in the needs of specific organizations

  • fast response to information requests: because the data are organized in a single system, it is easier to process complex requests for certain information contained in the DBMS
    different ways of access: DBMS allows users to access the information through various key fields, as well as using different programming languages

  • increase in user productivity: DBMS saves time which increases productivity; also users often find DBMS easier to use, which saves training costs.

  • improved data consistency

  • better data sharing: because of the centralized system, it is easier to control data access enforcement of standards: DBMS make it easier for the creator to enforce his standards concerning data creation, modification and deletion

  • improved data quality

  • reduced program maintenance

Sources:


1) Information Systems Today, by Jessup, Valacich and Wade, 2nd. ed.


2)http://www.blurtit.com/q955157.html


3) http://wiki.answers.com/Q/What_is_the_disadvantages_and_disadvantages_of_DBMS


4)http://www.antonine-education.co.uk/ICT_A2/Module_5/Topic_3/Topic_3_files/image001.gif

History of DBMS


A database contains data that are related, and stored in a way that facilitates the access and data search for the users. A Data Base management System (DBMS) is a software application used to crate, search, organize and hold data from one or more databases. Data bases appeared for the first time in the 1960s, with the main goal of facilitating the data storing for companies or organizations that required the use of large amounts of data. Before, the equivalent for DBMS were offices, the equivalent for databases were file drawers, the equivalent for records were file folders and the equivalent for attributes were reports. In the 1960s, organizations started to manipulate data electronically, using the file processing approach: data were kept in long computer files which were saved on tape. The first real types of DBMS appeared in the 1980s and were different from creator to creator. Pretty much all major computer hardware suppliers included in their package some sort of database management system, in order to cope with the increasing necessity. IBM had the most complete DBMS, but there were some important competitors, as well as firms that were starting to clone the IBM model. Gradually, DBMSs increased in complexity and soon after their ability to perform and schedule data backup became routine, as did file reorganization and reindexation of data. In present time, DBMSs dominate all computer based IS. Each individual database within a DBMS is a collection of attributes about certain entities. Entities are the subjects about which the data is collected. Records are collections of related attributes about a specific entity; each attribute are single bits of information.


Sources: 1) Information Systems Today, by Jessup, Valacich and Wade, 2nd ed.