Course detail

Database

FP-dataPAcad. year: 2026/2027

This course introduces students to the principles of database design, management, and security. It covers a broad range of topics, including data modelling, the relational model, SQL, transactions, query optimisation, distributed and NoSQL databases. Students will gain both theoretical knowledge and practical skills, such as creating ER diagrams, normalising tables, implementing security measures, and working with modern database tools. The course reflects current trends in database technologies, including cloud solutions and Big Data analytics.

Language of instruction

Czech

Number of ECTS credits

6

Mode of study

Not applicable.

Entry knowledge

Basic knowledge in computer science and programming, knowledge of algorithms and data structures, and basic knowledge in mathematics, particularly in logic and set theory.

Rules for evaluation and completion of the course

Credit Conditions:

The student must obtain at least 50% of the points during the semester, i.e., 50 points out of 100.

Plagiarism or unauthorized collaboration on projects or tests will result in the credit not being awarded and may lead to disciplinary proceedings.

Midterm Test: Completion of a practical task according to the assignment (40 points). The minimum number of points is 20.

Project: One project according to the assignment with the appropriate documentation (60 points). The minimum number of points is 30.

The assignment is presented in the third lecture.

Exam Conditions:

Final Exam: Completion of a practical example and an oral examination. No points from the credit are transferred to the exam.

Practical Test: Construction of a query that returns the required data set.

The exam evaluation is in accordance with the ECTS grading scale.

Course Completion for Students with Individual Study PlansCredit Conditions:

Completion of a project according to the assignment with the appropriate documentation. The assignment is presented in the third lecture. A minimum of 50 points out of 100 is required.

Exam Conditions:

Final Exam: Oral examination. The exam evaluation is in accordance with the ECTS grading scale.

Aims

Students in the course will gain knowledge about various types of database systems, data modeling, the relational model, SQL, transactions, indexing and query optimization, disaster recovery, distributed and NoSQL databases, and database security. They will also learn to work practically with database systems, create ER diagrams, normalize tables, implement transactions and security measures, and optimize queries.

Study aids

Study supports are displayed in e-learning.

Prerequisites and corequisites

Not applicable.

Basic literature

Begg, C., Holowczak, R., & Connolly, T. (2009). Mistrovství - Databáze: Profesionální průvodce tvorbou efektivních databází. Praha: Computer Press. ISBN 978-80-251-2328-71. (CS)
Coronel, C., Morris, S. (2018). Database Systems: Design, Implementation, & Management. 13th ed. Boston: Cengage Learning. ISBN 978-1-337-56833-21. (EN)
Harrison, G. (2019). Next Generation Databases: NoSQL, NewSQL, and Big Data. 2nd ed. New York: Apress. ISBN 978-1-484-23994-11. (EN)
Laurenčík, M. (2018). SQL: Podrobný průvodce uživatele. Praha: Grada Publishing. ISBN 978-80-271-0774-21. (CS)

Recommended reading

Davidson, S. B., & Seltzer, M. I. (2019). Readings in Database Systems. 5th ed. Cambridge: MIT Press. ISBN 978-0-262-02983-01. (EN)
Grolinger, K., & Capretz, M. A. M. (2019). Big Data: Concepts, Methodologies, Tools, and Applications. Hershey: IGI Global. ISBN 978-1-522-57020-11. (EN)
Stephens, R., Plew, R., & Jones, A. D. (2010). Naučte se SQL za 28 dní. Brno: Computer Press. ISBN 978-80-251-2700-11. (CS)

Classification of course in study plans

  • Programme BAK-MIn Bachelor's 1 year of study, summer semester, compulsory

Type of course unit

 

Lecture

26 hours, optionally

Teacher / Lecturer

Syllabus

1. Introduction to Databases
History and significance of databases
Basic concepts and terminology
Types of database systems
2. Data Modeling
Conceptual modeling
Entity-Relationship (ER) model
Examples and exercises
3. Relational Model
Relational algebra and relational calculus
Relational schema and integrity constraints
Transformation of ER model to relational model
4. Database Normalization
Normal forms
Normalization process
Denormalization and its consequences
5. SQL - Language for Working with Databases
Basics of SQL
DDL (Data Definition Language)
DML (Data Manipulation Language)
6. Advanced SQL
More complex queries
Aggregate functions
Subqueries and views
7. Advanced SQL
Stored procedures
Cursors
Transactions
8. Indexing and Query Optimization
Types of indexes
Creating and managing indexes
Query optimization
9. Disaster Recovery
Recovery methods
Logging and backup
Database restoration
10. Distributed Databases
Architecture of distributed databases
Challenges and solutions
Examples of distributed systems
11. NoSQL Databases
Types of NoSQL databases
Advantages and disadvantages
Examples of use
12. Database Security
Threats and vulnerabilities
Data protection and access rights
Encryption and auditing
13. Trends and Future of Database Systems
New technologies and approaches
Big Data and analytics
Cloud databases

Exercise

26 hours, compulsory

Teacher / Lecturer

Syllabus

1. Introductory Exercise
Familiarization with the environment
Installation and configuration of the database system
2. Data Modeling
Creation of ER diagrams
Examples of modeling real-world situations
3. Relational Model
Transformation of ER model into relational schema
Examples and exercises
4. Database Normalization
Normalization of tables
Examples of normalization and denormalization
5. Basics of SQL
Creating tables and defining schemas
Inserting, updating, and deleting data
6. Advanced SQL
More complex queries and subqueries
Aggregate functions and views
7. Advanced SQL
Stored procedures, cursors
Transactions
8. Indexing and Query Optimization
Creating and managing indexes
Query optimization on real examples
9. Disaster Recovery
Simulation of failures and recovery
Backup and database restoration
10. Distributed Databases
Working with distributed databases
Examples and exercises
11. NoSQL Databases
Working with NoSQL databases
Examples of use
12. Database Security
Implementation of security measures
Encryption and auditing
13. Final Exercise
Comprehensive project
Presentation of results

Self-study

72 hours, optionally

Teacher / Lecturer

Individual preparation for an ending of the course

32 hours, optionally

Teacher / Lecturer