Upload
samburland
View
218
Download
0
Embed Size (px)
DESCRIPTION
Chapter 1
Citation preview
Database Design and Introduction to SQL
Introduction to Database Management
TerminologyApplication: programs, data, procedures used for some purpose in an organization (eg financial, payroll, equipment maintenance, project management, )Database: an organized collection of related data for an application
Terminology (ctd)DBMS (DataBase Management System): set of programs that manage (create, modify, secure, backup, restore, ) one or more databases (eg Access, DB2, Oracle, SQL Server)Database Design: determining the structure (ie. schema) of the database required for the application
File Based (Non-database) Approach
File Based Approach
Used in all manual systems and in early computerized systemsDuplicates data between applications (eg customer information stored in files for Sales, Customer Service, Billing, )Increased data maintenanceCan create data inconsistenciesVery difficult to fulfill requirements that involve data from more than one system
Database ApproachData for each application is stored in a database and managed by the DBMSData can only be accessed through the DBMS and not directly through the OS
Advantages of Database ApproachEasier to combine data from more than 1 applicationAbility to share data between applications can result in reduced data redundancy (reduced duplication and improved consistency of data)Concurrency: Allows access to data by many different users at the same timeCentralized control of data by DBMS and DBA
Advantages of Database (ctd)Improved security and recovery of dataData integrity can be maintained through constraintsDBMS development tools reduce programming requiredApplication Flexibility and Data independence : Structure of data can be changed without having to change programs
Disadvantages of Database Approach
Complexity of DBMS software requires developers to have specialized skills DBMS overhead: software cost, data storage requirements, processing requirements, DBA responsibilitiesApplications take more time to design More complex to recover data
Sharing of Data between Applications using a DBMS
History of DBMSsMainframe DBMSs have been used since the 1960sSince the mid-1980s, DBMSs on PCs possess many of the features of their mainframe counterpartsEvolution of DBMS models: Hierarchical, Network, Relational, Object-oriented, Object-relational
Hierarchical Database ModelData is seen as a tree structure and can only be retrieved by navigating through hierarchyA parent record can have many children but a child record can have only 1 parent recordNavigation is achieved through use of pointers physically stored with each record
Hierarchical Model Example
Network Database ModelNext database model; product examples: IDMS, I-D-SData is seen as a network of records and relationships between these recordsData can only be accessed by navigating through defined relationshipsPointers physically stored with each record permit navigation
Network Database Example
Relational Database ModelDeveloped after network modelBased on mathematical set theory that ensures that data can be retrieved in any way required by an applicationData is stored in the form of 2 dimensional tables with no physical pointersData is related through common columns in separate tables Product Examples: Oracle, DB2, SQL Server
Relational Model Example
Hardware: Client/Server Architecture
Web Client/Server Example
Three-Tier Architecture
A Table of Data
Equivalent Terms
*A department can have many faculty but a faculty member can be assigned to only one department - cannot handle situation if a faculty member is assigned to more than one department!*Can represent applications that can not be represented using hierarchical model (eg Henrys Books)