Data bases 1000-I1BazDan
The course will cover the following topics:
- development history and various types of databases up to the present day, database properties
- SQL language (in particular the use of built-in functions, sets theory operators, joins, subqueries, aggregates, views, recursive queries, DDL, DML, null issues, LOBs, differences between SQL dialects in various relational DBMSs)
- management of users, permissions, schemas and databases using a query language, database server level access control
- basic optimisation techniques (query plans, indexing, proper schema modelling and construction, server configuration aspects)
- database backup, data recovery
- distributed databases
- brief introduction to alternative modern data models (like NoSQL)
The lecture will focus primarily on the theoretical aspects of these topics, while the laboratory classes will focus on developing practical skills of data and database handling using SQL.
Total student workload
Learning outcomes - knowledge
Learning outcomes - skills
Learning outcomes - social competencies
Observation/demonstration teaching methods
Expository teaching methods
- participatory lecture
Exploratory teaching methods
- practical
- laboratory
Online teaching methods
- methods developing reflexive thinking
- exchange and discussion methods
Prerequisites
Course coordinators
Assessment criteria
30% lab score
60% final exam score
10% project (assigned in mid-term, discussed during oral part of the exam)
To pass, the laboratory grade and exam grade must be at least 3
Bibliography
[1] L. Banachowski, E.Mrówka, K.Stencel, "Systemy baz danych. Wykłady i ćwiczenia, Wydawnictwo PJWSTK, 2004
[2] C. J. Date, H. Darwen, "SQL. Omówienie standardu języka", WNT 2000.
[3] Elmasri R., Navathe S., "Wprowadzenie do systemów baz danych." Wyd. Helion, 2005
[4] H. Garcia-Molina, J.D. Ullman, J. Widom, Systemy Baz Danych. Pełny wykład, WNT 2006
[5] http://postgresql.org/docs/ (m.in. dokumentacja SQL w dialekcie PostgreSQL z odniesieniami do standardu SQL)
[6] Oracle Data Modeler - http://www.oracle.com/technetwork/developer-tools/datamodeler/documentation/index.html
Literatura uzupełniająca:
[7] S. Abiteboul, R. Hull, V. Vianu, "Foundations of databases", Addison-Wesley, 1995.
[8] U. Rogers, "Oracle: Przewodnik projektanta baz danych", WNT 1995.
[9] http://education.oracle.com/ (zbiór różnorodnych materiałów edukacyjnych, m.in. dotyczących SQL)
[10] B. Karwin, "Antywzorce języka SQL. Jak unikać pułapek podczas programowania baz danych", Helion, 2012
[11] D. Petković, "Specification of Row Pattern Recognition in the SQL Standard and its Implementations. Datenbank Spektrum (2022). https://doi.org/10.1007/s13222-022-00404-3
Additional information
Additional information (registration calendar, class conductors, localization and schedules of classes), might be available in the USOSweb system: