Presentation on theme: "Chapter 12.3+ Information Systems Database Management."— Presentation transcript:
Chapter 12.3+ Information Systems Database Management
2 Database Management Systems Database: A structured set of data. Database Management System: (DBMS) A combination of software and data, including: Physical database: a collection of files that contain the data. Database engine: software that supports access to and modification of the database contents. Database schema: a specification of the logical structure of the data stored in the database.
3 Database Management Systems Specialized database languages allow the user to: specify the structure of data; add, modify, and delete data; query the database to retrieve specific stored data.
4 Database Management Systems Figure 12.6 The elements of a database management system
5 Databases Databases are a recent development in the management of large amounts of data. As paper file systems were “computerized” each application was implemented separately with its own data set. These systems were riddled with both corrupt data and redundant data, none of which could be shared.
6 Databases The integration of separate systems into one database resolved these issues, but introduced new ones. With all data shared, control of access to the data becomes a major concern. Payroll doesn’t need to see your grades.
7 Database Management Systems A schema is a description of the entire database structure used by the database software to maintain the database. A subschema is a description of only that part of the database that is particular to a user’s needs.
8 Database Management Systems A layered approach hides the complexities of database implementation. User sees data in terms of the application. The application “sees” data in terms of the database model. The DBMS “sees” data as it is organized.
9 Database Management Systems Advantages of the layered approach include: Simplification of the design process. Better control of access. Data Independence. Applications can be written in terms of simple, conceptual views of the data – the database model.
10 Database Models A database model is a conceptual view of how to organize and manipulate data. The most popular one is the Relational Model.
11 The Relational Model In a relational DBMS, the data items - and the relationships among them - are organized into rectangular tables. As with spreadsheets, these tables consist of rows and columns. Each table is called a relation. The rows are called tuples. The columns are called attributes.
12 The Relational Model Of course, different authors adopt different terms. There is a commonly used, alternate set of names: Relations are also called tables. A tuple can be referred to as a record, and in this terminology a record is a collection of related fields.
21 Relational Operations There are 3 fundamental operations that can be used to manipulate the tables in a database: SELECT Copies rows (tuples) from a table (relation) PROJECT Copies columns (attributes) from a table (relation) JOIN Combines 2 tables (relations) into 1
22 Relational Operations The result of any relational operation is a new relation. We can express these operations with a simple syntax. PGmovies ← SELECT from Movie where Rating = “PG” This operation creates a new relation (PGmovies) by copying all the rows from the Movie table that have a Rating of PG.
Relational Operations: SELECT The PGmovies relation. 23
24 Relational Operations The same syntax can be used for the other operations. PGtrimmed ← PROJECT MovieId, Title from PGmovies This operation creates a new relation that copies two attributes from the PGmovies relation.
Relational Operations: PROJECT The PGtrimmed relation. 25
26 Relational Operations A JOIN creates a new relation by combining 2 relations according to some criterion. Rentals ← JOIN Customer and Rents where Customer. Id = Rents.CustomerId
Relational Operations: JOIN The Rentals relation. 27
28 Relational Operations: PROJECT The PROJECT operation can be used to remove the attributes we don’t want… RentalsTrimmed ← PROJECT Name, Address, MovieId from Rentals
Relational Operations The RentalsTrimmed relation. 29
Relational Operations Now, JOINing RentalsTrimmed to PGtrimmed … PGrenters ← JOIN RentalsTrimmed and PGtrimmed where RentalsTrimmed.MovieId = PGtrimmed.MovieId …creates a table of customers who have rented PG movies. 30
32 Structured Query Language Structured Query Language (SQL) sometimes pronounced “SeQueL” a comprehensive language for managing relational databases. Implements the basic dBase operations, but with a different set of key words.
Structured Query Language SQL includes commands to: create new databases create new tables insert/delete records update records create views set permissions on tables, procedures, and views execute queries
Queries in SQL - PROJECT All SQL queries are created with SELECT. SELECT attribute-list FROM table WHERE attribute meets condition Conditional Operators: =, <>, >, =, <=, BETWEEN, LIKE, IN 34
Queries in SQL - SELECT SELECT * FROM table WHERE attribute meets condition * is a wild card symbol. It represents “all attributes” which means “the whole record”. 35
Queries in SQL - JOIN SELECT * FROM table1 INNER JOIN table2 ON condition The JOIN is performed first, then the SELECT. Types of JOINs: INNER, LEFT, RIGHT, FULL 36
37 Queries in SQL - Examples select Title from MOVIE where Rating = 'PG' select Name, Address from CUSTOMER select * from MOVIE where Genre like '%action%' select * from MOVIE where Rating = 'R' order by Title
38 Modifying Database Content insert into CUSTOMER values (9876, 'John Smith', '602 Greenbriar Court', '2938 3212 3402 0299') update MOVIE set Genre = 'thriller drama' where title = 'Unbreakable‘ delete from MOVIE where Rating = 'R'
40 Database Design Entity-relationship (ER) modeling A popular technique for designing relational databases. ER Diagram Chief tool used for ER modeling. Captures the important record types, attributes, and relationships in a graphical form.
41 Database Design These designations show the cardinality constraint of the relationship