PPKE ITK SPRING 2005 Database Systems Lecturer: Ágnes Bércesné Novák Instructors: Zoltán Fodroczi, Gergely Soós Teacher Assistants: Tamás Csillag, László Füredi, Zsolt Kada, Anna Lázár, Zoltán Kárász, Tünde Szilágyi , Péter Vízi Course lectures and homepage: http://www.digitus.itk.ppke.hu/~b_novak Textbook: Á. B. Novák, J. Csima, Z. Fodróczi, Gy. Katona, A. Sali: Database Systems, Theory and Practice , in print Reading: - Henry F. Korth and A. Silberschatz: Database System Concepts, McGraw-Hill Inc., Fourth Edition, 2001, http://www.cs.yale.edu/homes/avi/db-book/db4/index.html - Ulllman-Widom: Adatbázis rendszerek, Alapvetés, Panem kiadó 1997 (in Hungarian). Contact hours: 2 lectures 1 tutorial 1 laboratory exercise 1 Project consultations, also by appointment Period: 1 semester Prerequisite by topics: High level language, elementary data structures, searching/sorting algorithms, computer organization, discrete structures: set theory, propositional logic, file structures (basics). Brief description: This subject focuses on the needs of a business for a well designed information system. The module studies the design processes in forming both logical and physical database models, leading to the development of a relational database system. Topics: Database architectures, conceptual data models: E/R diagrams, relational model. Database languages: relational algebra, SQL (Oracle). Introduction to transaction handling. Recovery systems. Sofware: Oracle (interactive SQL), Oracle Forms Developer Objectives: 1. To apply design techniques to construct a global data model. 2. To study differing implementation strategies. 3. To familiarize the students with 4GL RDMSs in theory. 4. To develop an information support system in a relational database environment for a given information requirement. Teaching and learning strategies Lectures: introducing general concepts and theory Tutorials: iconsolidating new theoretical knowledge through corresponding examples Laboratories: gaining practical skills in using SQL by means of guided workbooks and worksheets. Project consultations: helping to develop the project with respect to the formal and conceptual requirements Project: designing and implementing a small but real system Project description Both the printed version of the project and the file of the printed version and programs on floppy or CD MUST be handed in. Tutorial for the printed version Formal description: 1. On the 1st page only the following information are given: Title: Database Systems I. Year 2003/2004, 2nd Smester PROJECT Project Title Name: Consultant: 2. On the 2nd page a Table of content is given 3. From this page on follow the conceptual description and type in your answer for each point listed below. You are supposed structure the problems and your answers to them in a clear way. Conceptual description: Part (i) Planning and implementing a database 1. Enterprise description: what is the aim, what data, what constraints should be stored 2. Entity Relationship Diagram for the enterprise described in 1. Explanation. 3. Relational modell getting from the E/R digram developed in 2. - Database schema with corersponding constarints - SQL statements for creating tables and constraints - Table instances - Some examples for populating the database 4. Normalization: An analysis for each table in 3: - which is the best normal form for the given table? - In case it is not in BCNF, give a BCNF lossless decomposition (through this point the implementation not necessarily is going to changed) - In case it is not in 3NF, give a dependency preservation 3NF decomposition Part (ii) Getting information from the database 5. Queries against the database and the results: - if it is applicable, for each relation find some statistical data (smallest, biggest, average) - join tables together, find corresponding data 6. At least one trigger Part (iii) 7. 8. 9. Design a user interface using Oracle 4GL facility Implement and descibre that user interface Providing some screen copies Assessment, grading policy : Exact time and date will be advertised in the lectures Presence on the lectures is mandatory hand-written lecture notes with vocabulary (can be checked any time), mandatory, but without mark 3 hand-written homework in connection to the project, mandatory without mark 2 written exams (closed book), with mark. DATES will be advertised in lectures 1 lab assignments on SQL , with mark . DATE: DATES will be advertised in lectures 1 Project, with mark Oral exam (list of problems will be given ), with mark Project 20% Lab 20% Midterm 20% Final (comprehensive) 25% Oral exam 15% ______________________________ Total Grades: 100% 90%80%-89% 70%-79% 60%-69% 0 %-60% 5 4 3 2 1 (excellent) (good) (average) (satisfactory) (fail) Syllabus (subject to change) Week Topic (Lectures) Topic ( Tutorial) 1. Information systems, database systems. General purpose database system architecture. Why not file management system? Levels of the information system architectures. Basic database modeling: the entity-relationship model The relational data model. Relational algebra Extended relational models . Standard SQL Client - server architectures: some property of the Oracle software 2. 3. 4. 5. 6. 7. - 8. 9. 10. 11.12. 13. 13. 14. DDL, DML MIDTERM EXAM Relational database design 1.: redundancy, consistency Relational database design 2. : functional dependencies, keys, Armstrong-axioms. Physical data design: storing and access methods Relational database design 3.: Multivalued dependencies, other, generalized dependencies Normal forms: 1-3, Boyce-Codd Database security, privacy, Transactions recovery, Transactions Other database models: network, hierarchical, fuzzy, object oriented. FINAL EXAM, Project shower, oral exams on extra date Lab (L) or study room (R) R Examples for the entity relationship model. Homework 1 handout L Transforming relations. into R Simple queries for practicing relational algebra through SQL. Homework 1 in. Homework 2 out. SQL L Revision, homework consultation. Homework 2 in. Midterm test Aggregate functions Homework 3 out. Index Project consultations Optimization database queries Project consultations. LAB ASSIGNEMENT e Embedding SQL commands into programs, Authorization in SQL Forms Developer I. Corresponding examples Forms Developer II. Final test Forms Developer III R ER models L R L L R L R L R L