Database Systems

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
BIK-DBS.21 Z,ZK 5 14KP+6KC Czech
Garant předmětu:
Monika Borkovcová
Monika Borkovcová, Michal Valenta
Monika Borkovcová, Andrii Plyskach, Michal Valenta
Department of Software Engineering

Students get acquainted with the architecture of the database engine and typical user roles. They learn to design the structure of a smaller data store (including integrity constraints) using a conceptual model and then implement them in a relational database engine. They get acquainted with the SQL language and also with its theoretical basis - relational database model. They will get acquainted with the principles of relational database schema normalization. They understand the basic concepts of transaction processing and control of parallel user access to a single data source. At the end of the course, students will be introduced to alternative nonrelational database models.


Knowledge of working with operating systems such as Unix/Linux and MS Windows at a common user level is assumed, as well as the ability to algorithmically describe problem solving, and basic knowledge of algebra and logic. Active knowledge of a programming language is not a requirement. Materials for teaching the subject during the semester are available on the website https://courses.fit.cvut.cz/BI-DBS. The operational management of teaching takes place on the portal https://dbs.fit.cvut.cz

Syllabus of lectures:

1. Basic principles of database systems, database engine architecture.

2. Conceptual, database and physical level of data view.

3. Conceptual data model. Basic constructs, expression of integrity constraints.

4. Relational data model. Relations, attributes, domains, relational database schema, relational algebra.

5. Introduction to the SQL language: the basics of the SELECT statement, the basics of the SQL DDL language.

6. Design of a relational schema by direct transformation from a conceptual schema.

7. SQL language - advanced querying: aggregation, nested queries, set operations.

8. SQL language - parts of DCL, DML, TCL.

9. Transactions, error recovery, parallel access coordination, data protection.

10. Functional dependencies, normal forms of relations, normalization of the relational scheme by decomposition.

11. Physical level of data view. Indexes and their use in relational databases. Basics of optimizing SQL queries.

12. Non-relational database models. Database trends.

13. Application access to the (relational) database. Introduction to the concept of software engineering.

Syllabus of tutorials:

1. Proseminar: Organizational instructions, assignment of a semester assignment

2. Computer: Getting to know the environment and tools

3. Proseminar: Conceptual data modeling

4. Computer: SQL communication with the DB engine and work with a tool for conceptual modeling

5. Proseminar: Conceptual data modeling, relational algebra as a query language

6. Consulting, computer: Work on a semester assignment, consultation

7. Proseminar: Relational algebra as a query language

8. Computer: Work on a semester assignment, consultations

9. Seminar: SQL language

10. Computer: Work on a semester assignment, consultations, checkpoint of semester work

11. Seminar: SQL language,

12. Computer: Work on a semester assignment

13. Seminar: Schema normalization, functional dependencies, credits

Study Objective:

After completing the course, students will be able to design and implement small databases and work with them effectively using the SQL language. Today, knowledge of (relational) databases is a necessary qualification, not just for programmers of information systems and creators of www applications, but for practically all informatics professionals. The course provides hands-on experience with databases that can be directly used in a wide range of situations, as well as theoretical foundations for subsequent courses, such as Database systems administration or specialized database-oriented courses (SQL, Database systems 2) in the second cycle degree programme.

Study materials:

1. Coronel C., Morris S. : Database Systems: Design, Implementation, and Management (13th Edition). Cengage Learning, 2018. ISBN 978-1337627900.

2. Garcia-Molina H., Ulman D. J., Widom J. : Database systems: The Complete Book (2nd Edition). Pearson Education, 2009. ISBN 978-0131873254.

3. Harrington J.L. : Relational Database Design and Implementation (4th Edition). Morgan Kaufmann, 2016. ISBN 978-0128043998.

4. Pokorný J., Valenta M.: Databázové systémy (2. rozšířené vydání). CVUT Praha, 2020. ISBN 978-80-01-06708-6.

Further information:
Time-table for winter semester 2023/2024:
Time-table is not available yet
Time-table for summer semester 2023/2024:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2024-07-13
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/en/predmet6544006.html