Home » Microsoft SQL Server » 01 - Introduction to Databases and SQL Server
1

An Introduction to Database

Brief introductions to benefits of working with Database

Data storage and management is an issue that confronts all organizations and businesses in today's information age. Businesses are faced with the task of not only storing customer, product, and order data but also with the task of 'mining' existing data for relevant statistics and qualitative analysis. Computing in general and Database Management Systems (DBMS) in particular automate data storage and manipulation and provide businesses with the capacity to view their data in custom formats, display it over the Internet or on a workstation, connect it to other data repositories, perform qualitative and quantitative analysis, and more in an efficient and secure manner.

Examples of Databases
Examples of Databases

The DBMS began in the 1960s and early 1970s. Early DBMS were not the flexible data containers we encounter today. Rather, they were tailored to fit the needs of a single organization. Adding new types of data or reorganizing current data was problematic. Relational Databases were conceived in the early seventies and they have replaced the earlier legacy systems over the span of a few decades. Relational databases are standardized in a few ways that make them useful across the board. They also present data in a way that most people can easily work with and manipulate. This presentation or logical representation however does not mirror the actual way in which data is stored on the hard disk of the computer.

The relational data model was defined by E.F. Codd in 1970 through a landmark research paper called "A Relational Model of Data for Large Shared Data Banks". A relational database is a group of related 2-dimensional tables. Each table describes the relation of the main subject of the table to important information. The columns of the table contain the types of information stored about the main subject. For example, the main subject may be EMPLOYEE and the columns may contain EMPLOYEE_ID, EMPLOYEE_DEPARTMENT, and EMPLOYEE_SALARY. Each column has a range of permissible values, called a domain. For example, EMPLOYEE_SALARY should be a number greater than zero. The rows in the database (referred to as tuples) would contain information on different employees.

Searching for an employee in a relational database is quite easy; a user may match the value in the EMPLOYEE_ID column to find an entry in the table. How the relational database is represented in the hard drive of the computer - physical storage - becomes unimportant compared to how users and database administrators view the table - the logical view.

The ER or Entity Relationship model was developed in the late seventies. In many ways, it is simply a refinement of the relational model. The EMPLOYEE, according to this model, would form an entity. Other entities, such as SKILLS, SHIFT, and HOURS_WORKED, would be connected to EMPLOYEE by a series of well defined relationships. For example, the relationship between EMPLOYEE and SKILLS would be many to many. That is, a given employee may have many skills, and a given skill may be possessed by many employees. However, the relationship between EMPLOYEE and SHIFT would be many to one; many employees may work in one shift, but a single employee cannot work many shifts. The ER model remains the standard today. Another standard that came to us from the 70's is the Sequential Query Language, or SQL, a programming language that is based on the relational model and can be used to efficiently pull-up and alter data from any relational database.

The ER Model
The ER Model

Microsoft's proprietary SQL Server relational database management system is among the most popular DBMS today. This is partially due to the popularity of Microsoft products and partially due to SQL Server's powerful features and flexibility. SQL Server supports an extended version of SQL known as T-SQL or Transact SQL. Although SQL server has been traditionally used by small to medium vendors and businesses, it is increasingly becoming the DBMS of choice among large enterprises.

The SQL Server offers ease of management via its standard GUI and provides an ideal environment to store and deploy data used by Microsoft's ASP and ASP.NET platforms. However, SQL Server only runs on the Microsoft Windows OS and there are no plans of making it available on other platforms yet.

Microsoft SQL Server's codebase originated in the early Sybase SQL Server DBMS, a competitor of Oracle, IBM, and Sybase. The first independently marketed version of SQL Server (version 4.2) was created by Microsoft and Sybase in 1989. This version was identical to version 4.0 of the Sybase SQL Server for UNIX and VMS. The SQL Server version customized for Windows was first shipped in 1992. Version 6.5 was designed purely for Windows NT and did not contain any connection to Sybase. Version 7.0 was the first to institute a Graphical User Interface.

Two versions of the SQL Server are widely used today. One of them is the Microsoft SQL Server 2000 released in August 2000. Several organizations have upgraded to SQL Server 2005. Free Express Editions that offer a substantial portion of the features of the enterprise versions are also available for download, as well as evaluation versions that allow user's to preview the capabilities of SQL Server.