Objectives and competences
The objective of the course is to prepare students to understand the principles of relational databases, to know the ANSI-SPARC architecture and to understand the difference between the different levels of relational database modelling. The key goal is to prepare students to be able to design a relational database properly and thus conceptually model a relational database, effectively use the SQL query language to manage the relational database tables, and insert, update, delete and retrieve data from a relational database, as well as prepare transactions and triggers.
Content (Syllabus outline)
• Introduction to databases, the definition of ACID properties.
• Introduction to database modelling: basic definitions and acquaintance of each modelling phase focusing on requirements collection and analysis.
• Conceptual modelling: role of a conceptual model, entity-relationship model (entity, relationship, attribute, key, cardinality).
• Normalization: role and meaning of normalization for database modelling, functional dependencies, normal forms (1NF, 2NF, 3NF, BCNF, 4NF, 5NF).
• Logical modelling: logical (relational) data model.
• Relational data model: reasons for the relational data model appearance, rules for mapping the E-R model into a relational model, relational algebra, and relational calculus.
• Query language: SQL – DDL, DML, TCL; basic and complex statements, transactions, and triggers.
• Databases administration: users, roles and privileges.
Learning and teaching methods
• lectures
• computer tutorials
Intended learning outcomes - knowledge and understanding
• understand relational databases considering ACID properties,
• use SQL query language to manage relational database tables, insert, update, delete, and retrieve data from the relational database, and prepare transactions and triggers,
• transform the conceptual model into a logical (relational) data model,
• perform conceptual modelling of a relational database using the ER diagram,
• design relational database,
• clarify the connection between different levels of relational database modelling,
• understand the conceptual, logical, and physical relational database modelling,
• describe the ANSISPARC architecture
Intended learning outcomes - transferable/key skills and other attributes
• Communication skills: oral laboratory work defence, manner of expression at the written examination.
• Use of information technology: use of software tools for modelling databases, preparation of relational data model and query statements execution.
• Problem-solving: designing and implementing simple databases.
Readings
• T. Mohorič: Podatkovne baze, Bi-TIM, Ljubljana, 2002.
• B. Brumen: SQL osnove strukturiranega poizvedovalnega jezika, DZS, 2013.
• T. Connolly, C. Begg: Database Systems: A Practical Approach to Design, Implementation and Management, 6th. Edition, Pearson, 2015.
• R. Elmasri, S. Navathe: Fundamentals of Database Systems, 7th.Edition, Pearson, 2016.
• C. Coronel, S. Morris: Database Systems – Design, implementation, & management, 13th Edition, Cengage, 2017.
• C. J. Date: Database Design and Relational Theory: Normal Forms and All That Jazz, 2nd Edition, Apress, 2019.
Additional information on implementation and assessment The exam may be replaced by written midterm exam in the weight of 60%.