COURSE GOALS: Acquiring basic knowledge about relational database systems. Getting acquainted with methods for conceptual, logical and physical design of relational databases. Mastering the SQL language for working with relational databases.
LEARNING OUTCOMES AT THE LEVEL OF THE PROGRAMME:
1. KNOWLEDGE AND UNDERSTANDING
1.4. list and describe basic concepts and abstract principles of computing machines, information and communication technology;
1.5. describe the purpose and use of common software packages;
1.6. list and describe the methods for manipulating data, basic principles of databases and fundamental algorithms in programming;
1.7. describe the latest developments in digital technology and their possible application in teaching;
2. APPLYING KNOWLEDGE AND UNDERSTANDING
2.5. describe the basic concepts of digital technology;
2.6. apply fundamental algorithms in programming;
2.7. use computing technology to solve scientific and technological problems;
2.8. prepare pupils for lifelong learning in digital environment.
LEARNING OUTCOMES SPECIFIC FOR THE COURSE:
Upon successful completion of the course, the student is able to:
* design a conceptual scheme (entities, relationships, attributes) for a simple data base;
* transform a given conceptual data base scheme into a relational scheme;
* normalize a given relational scheme by bringing it at least to the third normal form;
* use MySQL, or some other data base management tool that supports the SQL language;
* write SQL statements for creating a given data base specified by its relational scheme;
* write SQL statements for performing simple, complex or aggregate queries over a given data base.
Topics covered (hours of lectures + hours of exercises):
1. Introduction to database systems (4+2)
2. Conceptual database design (4+4)
3. Relational model - logical database design (4+5)
4. Normalization - additional aspects of logical database design (4+5)
5. Queries in relational databases (5+6)
6. Physical database design and implementation (5+4)
7. Database integrity and security (4+4)
REQUIREMENTS FOR STUDENTS:
Students should take active part in classes, write home works, take mid-term exams, and if necessary take the final exam. For each student his presence in classes is recorded and performance is measured. In order to complete the course, a student must be present on at least 50% of classes and he/she must earn at least 50% of the maximum grade.
GRADING AND ASSESSING THE WORK OF STUDENTS:
Grading and assessing the work of students during the semesters:
* Two written mid-term exams
* Two home works
Grading at the end of semester:
* Final written exam
Contributions to the final grade:
* 16% of the grade is carried by the results of the home works
* 4% of the grade will be based on presence and activity
* 50% of the grade is carried by the results of the two written mid-term exams
* final exam carries 30% of the grade.
- R.Manger: Baze podataka. Element, Zagreb, 2012. (Udžbenik Sveučilišta u Zagrebu)
- C.J. Date: An Introduction to Database Systems, 8th Edition. Addison-Wesley, Reading MA, 2003.
- R. Elmasri, S. Navathe: Fundamentals of Database Systems, 6th Edition. Addison-Wesley, Reading MA, 2010.
- A. Silberschatz, H.F. Korth, S. Sudarshan: Database System Concepts, 6th Edition. McGraw-Hill, New York, 2010.
- C. Churcher: Beginning Database Design - From Novice to Professional. Apress, Berkley CA, 2007.
- R.F. Van der Lans: Introduction to SQL. 4th Edition, Addison-Wesley, Upper Saddle River NJ, 2006.
- M. Widenius, D. Axmark: MySQL Reference Manual. O'Reilly & Associates, Sebastopol CA, 2002.