Course: CSC 222 Database Design and Management I (3 credits Compulsory) Course Duration: Three hours per week for 15weeks with practical class (45 hours) As taught in 2010/2011 session Lecturer: Oladele, Tinuke Omolewa M.Sc. Mathematics (Computer Science Option) (Ilorin), B.Sc. Computer Science (Benin) Department of Computer Science, Faculty of Communication & Information Sciences, University of Ilorin, llorin, Nigeria. E-mail: tinudipe@yahoo.co.uk, oladele.to@unilorin.edu.ng Office Location: Block 10 Room F9 Faculty of Communication & Information Sciences, University of Ilorin, llorin,nigeria. Consultation Hours: 12noon 2pm (Tuesday & Thursday) Course Content File Management Systems and its shortcoming, Database and Database Management System, Database Administrators, Data models: network, hierarchical and relational models, Entityrelationship model. Database design: SQL, Relational algebra and calculus. Query Processing and optimization. Study of some Standard Database System i.e. Access and Oracle. Course The course presents the fundamental concepts of Database Management. It also provides a general overview of the nature and purpose of Database Systems. The course explain how the concept of Database System was developed, what the common features of Database Systems are, what a Database System does for the user, and how Database Systems are implemented. Various Database Systems are also studied. Course Justification The Database is now an integral part of our day to day life that often we are not aware we are using one. When you visit the University Library, there is probably a database containing details of the books in the Library, details of the users, reservations and so on. Therefore, there is the need to know about operational aspect of Database Systems and how the Database Management Systems can be developed and implemented is very crucial. Course The main objectives of this course are to introduce students to the rudiments of Databases and Database Management Systems, and how they are developed, implemented, and maintained. At the end of this course, the students will be able to: (1) Explain the nature of Database-Management Systems (DBMSs), including their structure, design, and evaluation; (2) express the relationship between DBMSs and the analysis of information systems in libraries and in business; (3) make distinctions among Flat-file databases (DBs), Network DBs, Hierarchical DBs, Relational DBs; (4) explain the process of normalization of relational DBs; and 1
(5) explain the role of the Structured Query Language (SQL) standards in the current and future development of DBMSs. Course Requirements Students are expected to attend 75% of the classes before they can sit for the examination and participate very well in the class. Students are also expected to bring their laptops to class so as to be to work through examples in the notes during the lectures practically. Students must as well participate in all assignments whether individual or group. Methods of Grading S/N Type of Grading Score (%) 1. Test 10 2. Assignment 5 3. Project 10 4. Participation in class 5 5 Final Examination 70 TOTAL 100 Course Delivery Strategies The course delivery strategies will include face-to-face lectures and practical sessions. Practical Schedule 1. Introduction to Microsoft Access 2. Creating Tables 3. Entering Data into Tables 4. Creating Forms 5. Creating Reports 6. Structured Query Language (SQL) 7. Query Processing with SQL and Graphic User Interface (GUI) 8. Object-Oriented DBMS 9. Embedding C Programming Language 10. Creating DBMS Application Programs 11. Relational Database Normalization 12. Logging into Oracle 13. Creating Tables 14. Querying the Database with SQL commands LECTURE CONTENT Week 1: File Management System The objectives of this topic are to provide background knowledge of File Processing System (File-Based System) and its limitations. Understanding of management and social issues such as Database security and privacy. 2
An overview of the course Definition of Fie Processing System Third Hour Limitations of the file based system 1. What do you understand by the word File processing? 2. What are the features of a file processing system? 3. State (2) major differences between file processing system and the manual system. 4. List (4) limitations of the file processing system. 5. What is information? 1. File management 3. Available at : http://publib.boulder.ibm.com/iseries/v5r2/ic2924/index.htm?info/ddm/rbae5mst02.ht m Accessed 23rd September 2. Refer to the following Web site to learn more about file organization: www.cim.mcgill.ca/~franco/opsys-304-427/lecture-notes/node53.html Accessed 23rd September Week 2: Introduction to Databases : The main objective of this topic is to define databases and to distinguish between entities, attributes and relationships. Introductory level of skill in the use of a microcomputer database-management system (Microsoft Access) Definition of basic concepts; entities, relationship, and attributes. Creation of Databases 1. What is a Database? 2. List (5) popular Relational Database Management Systems. 3. What is a Table? 4. Mention (2) ways by which Database files can be created? 5. How are forms created? 1. Rich Maclin 3, Database Management Systems, Chapter 1. rmaclin@d.umn.edu 2. Silberschatz 1 A., Korthand H. F., and Sudarshan S., (1999), Database System Concepts (3rd Edition) (pp. 63 72), WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. 3. en.wikipedia.org/wiki/database_system Accessed 23rd September 3
4. en.wikipedia.org/wiki/database_management_system Accessed 23rd September 5. nptel.iitm.ac.in/courses/iit...to_database_systems.../1_introduction.pdf Accessed 23rd September Week 3: Database Management System The main objective of this topic is to introduce the students to the basic concepts of Database Management Systems. The students will be provided with a thorough understanding of why Database Systems are more versatile than the file based system. Types of Database Management Systems Instances and schemas 1. With the aid of a diagram, define a Database Management System. 2. State (4) differences between a File Processing System and a Database Management System. 3. Enumerate (5) advantages of Database Systems. 4. What is a Database schema? 5. What do you understand by the concept primary key. Concepts (3rd Edition), (pp. 1 19) WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. 2. Rich Maclin 3, Database Management Systems, Chapter 1. rmaclin@d.umn.edu 3. en.wikipedia.org/wiki/database_system Accessed 23rd September 4. en.wikipedia.org/wiki/database_management_system Accessed 23rd September 5. nptel.iitm.ac.in/courses/iit...to_database_systems.../1_introduction.pdf Accessed 23rd September Week 4 Database Administrators The objective of this topic is to familiarize the students with the main reasons for using Database Management Systems and how to have control over the data and the programs that access the data. Uses on Database Management Systems 4
Functions of the Database Administrator 1. State (5) functions of a Database Administrator. 2. List (5) disadvantages of Database Management Systems. 3. State (2) reasons for using Database Management Systems. 4. Design a database file for Students Record System, using (8) fields and (10) records. 5. Itemize (5) types of Database Management Systems. Reading list Concepts (3rd Edition) (pp. 15-17) WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. 2. en.wikipedia.org/wiki/database_system Accessed 23rd September 3. en.wikipedia.org/wiki/database_management_system Accessed 23rd September 4. nptel.iitm.ac.in/courses/iit...to_database_systems.../1_introduction.pdf Accessed 23rd September Weeks 5 and 6: Data Models The objectives of this topic are to introduce the students to the concept of Data Models as conceptual tools for describing real-world entities to be modeled in the Database and the relationships among these entities. (Week 5) Types of models (Week 5) Entity-Relationship model (Week 6) Object-oriented Model (Week 6) Advantages and disadvantages of Database Processing 1. State and briefly explain (4) types of Data Model. 2. What do you understand by Entity-Relationship model? 3. List & explain the (5) advantages of Database processing. 4. Highlight the differences between Entity-Relationship model and Object-Oriented model. 5. Construct an Entity-Relationship diagram for a hospital with a set of patients and a set of medical doctors. Associate with each patient a log of the various tests and examinations conducted. 5
Assignment Design a relational database for the University Registrar s office. The office maintains data about each class, including the instructor, the number of students enrolled, and the time a place for each meeting. Reading list Concepts (3 rd Edition) (pp. 7-9) WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. 2. en.wikipedia.org/wiki/database_system Accessed 23rd September 3. en.wikipedia.org/wiki/database_management_system Accessed 23rd September Week 7: Relational Algebra The objective of this topic is to introduce the students to the set of algebraic operations that take one or two relations as input and produce a new relation as their result. The concept of relational calculus will also be introduced. Fundamentals of Relational Algebra Formal definition of Relational Algebra 1. Distinguish between Relation and Relational Database. 2. What is a tuple? 3. State the general form of a tuple-relational calculus. 4. List (2) reasons why null values might be introduced into databases. 5. State and briefly explain (5) fundamental operations in The Relational algebra. Concepts (3 rd Edition) (pp.71-90) WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. 2. en.wikipedia.org/wiki/database_system Accessed 23rd September 3. en.wikipedia.org/wiki/database_management_system Accessed 23rd September Weeks 8 and 9: Database Design The objective of this topic is to generate relation schemas that allows us to retrieve information without redundancy, yet allows information to be retrieved easily. 6
(Week 8) Pitfalls of Relational Database Design (Week 8) Decomposition (Week 9) Modification of the database (Week 9) Normalization 1. Identify (5) pitfalls of Relational Database Design. 2. What is Decomposition? 3. How can update anomalies be resolved in Relational Database Design? 4. Define the concept of functional Dependence. 5. State and briefly explain the various types of Normal Forms. 6. List (5) purposes of Normalization. Concepts (3 rd Edition) (pp. 215-222) WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. 2. en.wikipedia.org/wiki/database_system Accessed 23rd September 3. en.wikipedia.org/wiki/database_management_system Accessed 23rd September Week 10: Commercial Database Management Systems The objective of this topic is to allow students to be able to create Database Managements Systems that provide services for commercial purpose in organizations and establishments. Creating Database applications Solving real-life problems using Database Systems Third Hour Practicals 1. List (6) major steps that will be taken in setting up a Database for a particular enterprise. 2. Explain the difference Between Physical and Logical Data Independence. 3. Create a Database for a Library Management System, using all the related fields and add (20) records. 4. Itemize (10) fields that a relevant to a Hospital Record System. 5. State (5) functions of Database Management Systems. 7
1. en.wikipedia.org/wiki/database_system Accessed 23rd September 2. en.wikipedia.org/wiki/database_management_system Accessed 23rd September Week 11: Query Languages The objective of this topic is to acquaint students with the rudiments of query languages that are user-friendly and enhances modification. Database Management System Structured Query Language (SQL) Third Hour Domain Types in SQL 1. State (3) types of Query Languages. 2. Give (2) reasons for using Embedded SQL. 3. Mention (5) built-in domain types in SQL. 4. What do you understand by the concept Integrity Constraint? 5. Define the term Query-by-Example. Concepts (3 rd Edition) (pp. 71-76) WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. Week 12: Query Processing Query processing is based on how to filter out data from Databases. Commands have to be issued using Structured Query Language (SQL). The objective of this topic is to acquaint the students with the activities involved in extracting data from a Database. These activities include translation of queries expressed in high level Database languages into expressions that can be implemented at the physical level of the file system. Overview Record Preparation 8
1. With the aid of a diagram, explain the steps involved in Query Processing. 2. State (2) reasons why sorting of data plays an important role in Database Systems. 3. List (4) main commands of Data Manipulation Language (DML). 4. What do you understand by the term parsing in Query Processing? 5. Give the general syntax of the SELECT command. Concepts (3 rd Edition) (pp. 381-438) WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. Week 13: Query Optimization Optimizing the query evaluation plan by adding operators to the query statement. The objective of this topic is to teach the students how to select the most efficient query evaluation plan for a query. Query Optimization Query Selection Operation 1. What is Query Optimization? 2. At what point during query processing does optimization occur? 3. Distinguish between the function of AND and OR operators. 4. State the various ways by which the ORDER BY command is used in SQL. 5. State the function of JOIN Command. Concepts (3 rd Edition) (pp. 432-434) WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. Week 14: Introduction to Oracle To be able to manipulate data using Oracle Database Management System. The main objective of this topic is to introduce the students to Oracle ; a Database management application program. Students will be taught how to create Database files and carry out operations such as: Insertion, Deletion, and Updating. 9
Introduction to Oracle features File Modification 1. What is a Table? 2. How are tables created in Oracle? 3. What is the significance of file indexing in Database design? 4. How can tuples be inserted into tables? 5. State the command for getting rid of tables. 1. http://infolab.stanford.edu/~ullam/fcdb/oracle/or-load.html Week 15: Revision All topics would be reviewed. Students would be expected to ask questions and seek further clarification on any topic that they could not understand during the course of the lectures. Also questions will be asked from students to ascertain how well the course is understood by them. Revision Questions 1. List (5) main commands of Data Definition Language (DDL). 2. State (3) Aggregate Functions and their uses. 3. Draw and specify the functions of (3) main symbols used in Entity-Relationship diagram. 4. Mention (5) type of keys. 5. Distinguish between super key and candidate key. 6. What is the function of INSERT command? 7. What is the name given to a database driven website? 8. How is data entered into Databases in Oracle? 9. Name (3) RDBMS that are best used for creating database driven websites. 10. What is the function of Design View in MS Access? 11. State the functions of AND and OR operators. 12. Mention (5) types of Relational Database Management System. General ing 1. Rich Maclin, 3 Database Management Systems, Chapter 1. rmaclin@d.umn.edu 2. Silberschatz A 1., Korthand H. F., and Sudarshan S., (1999), Database System Concepts (3 rd Edition), WCB/McGraw-Hill, USA. ISBN 0-07-031086-6. 3. en.wikipedia.org/wiki/database_system Accessed 23rd September 4. en.wikipedia.org/wiki/database_management_system Accessed 23rd September 10
5. nptel.iitm.ac.in/courses/iit...to_database_systems.../1_introduction.pdf Accessed 23rd September 6. searchsqlserver.techtarget.com/.../database-management-system Accessed 23rd September 7. www.amazon.com/database-management-systems.../0072465638 Accessed 23rd September 8. Amazon.com: Database Management Systems (9780072465631): Raghu Ramakrishnan, Johannes Gehrke: Books. Accessed 23rd September 9. http:www.quackit.com/database/tutorial Accessed 23rd September 10. http:www.quackit.com/sql-server/tutorial Accessed 23rd September 11. http:www.quackit.com/sql/tutorial Accessed 23rd September Legend 1- Available in the University Library 2- Available in Bookshops. 3- Available on the Web. 4- Personal Collection 5- Departmental Library 11