Established by: Faculty Board of Science and Technology, 2017-12-27
Revised by: Faculty Board of Science and Technology, 2023-06-19
Contents
This course covers the concepts and tools necessary to use database systems. This starts with introducing the relational and semi-structured models of data and then delving into the classic relational query languages (tuple calculus and relational algebra), normalization theory and entity-relationship modeling. This is followed by an in-depth coverage of SQL including its use in a server environment. The last part of the course covers semi-structured data models using XML and accessed via XPath/XQuery.
The course consists of two parts: Part 1, principles, 4.5 credits: This part covers the following topics: the relational model of data; the use of SQL, as both a stand-alone language and its use in applications with C, Java or Python as the host language, to express queries and updates as well as to declare schemata; the relational algebra and calculus; Entity Relationship-based schema design; and the normalization of relational schemata. The semi-structured data model as represented in XML and accessed in XPath/XQuery.
Part 2, practice, 3 credits. In the practice part some of the theories and techniques discussed in the principles part are put into practice. This consists of a series of mandatory practical assignments.
Expected learning outcomes
Knowledge and understanding After completing the course, the student should be able to:
(FSR 1) describe the relational model of data,
(FSR 2) explain what conceptual modeling is and how it is used in the development of database schemata,
(FSR 3) display sterling understanding of normal forms for relational schemata and describe algorithms to realize them,
(FSR 4) display a basic understanding of data modelling and querying in the context of semistructured data.
Skills and abilities After completing the course, the student should be able to:
(FSR 5) display skill in declaring relational schemata using SQL,
(FSR 6) display broad competence in expressing queries and updates in SQL,
(FSR 7) develop interfaces to database-management systems using ODBC with one of C, Java or Python as the host language,
(FSR 8) express queries in the relational algebra and relational calculus,
(FSR 9) translate Entity Relationship specifications to relational schemata,
(FSR 10) design simple schemata in XML, represent data within those schemata, and express simple queries in XQuery/XPath on those schemata.
Required Knowledge
At least 90 ECTS, including 60 ECTS Computing Science, or at least 120 ECTS within a study programme. At least 7.5 ECTS programming; 7.5 ECTS data structures and algorithms; either (a) 22.5 ECTS mathematics or (b) 7.5 ECTS discrete mathematics and 7.5 ECTS logics. Proficiency in English equivalent to the level required for basic eligibility for higher studies.
Form of instruction
Instruction consists of lectures and mandatory assignments. In addition to scheduled activities, individual work with the material is also required.
Examination modes
The examination of Part 1 consists of recitations and a written exam worth. The recitations are done by handing in a written solution to given problems and then participating in the recitations. Students are randomly chosen to present their solutions and the others students are expected do discuss and contribute to the solutions presented. The exam is mandatory while the recitations only contribute towards a higher grade. The grades given are Fail (U), Pass (3), Pass with Merit (4), or Pass with Distinction (5).
The examination of Part 2 consists of a mandatory assignments that must be demonstrated to an adequate degree in a lab setting. The assignments are assessed as either complete or incomplete. In part 2, the grades given are Passed (G) or Fail (U). The part will be rated G/passed when all mandatory assignments are assessed as completed.
On the course as a whole, the grades given are Fail (U), Pass (3), Pass with Merit (4), or Pass with Distinction (5). In order to pass the course, both mandatory parts must be passed. The final grade of the course is the grade of part 1.
Adapted examination The examiner can decide to deviate from the specified forms of examination. Individual adaptation of the examination shall be considered based on the needs of the student. The examination is adapted within the constraints of the expected learning outcomes. A student that needs adapted examination shall no later than 10 days before the examination request adaptation from the Department of Computing Science. The examiner makes a decision of adapted examination and the student is notified.
Other regulations
If the syllabus has expired or the course has been discontinued, a student who at some point registered for the course is guaranteed at least three examinations (including the regular examination) according to this syllabus for a maximum period of two years from the syllabus expiring or the course being discontinued.
Literature
Valid from:
2024 week 1
Database systems : the complete book Garcia-Molina Hector, Ullman Jeffrey D., Widom Jennifer 2. ed., new internat. ed. : Harlow, Essex : Pearson Education Ltd : cop. 2014 : ii, 1133 s. : ISBN: 129202447X Mandatory Search the University Library catalogue