Databases Basics and Database Programming (3 cr)
Code: TT00BB52-3017
General information
Enrollment
30.12.2024 - 26.01.2025
Timing
01.01.2025 - 31.07.2025
Number of ECTS credits allocated
3 op
Mode of delivery
Contact teaching
Unit
Teknologia
Teaching languages
- Finnish
Degree programmes
- Bachelor’s Degree in Information and Communication Technology
Teachers
- Eero Huusko
Groups
-
TTV23SATTV23SA
- 13.01.2025 12:45 - 16:00, Tietokantojen perusteet ja tietokantaohjelmointi TT00BB52-3017
- 20.01.2025 12:45 - 16:00, Tietokantojen perusteet ja tietokantaohjelmointi TT00BB52-3017
- 27.01.2025 12:45 - 16:00, Tietokantojen perusteet ja tietokantaohjelmointi TT00BB52-3017
- 03.02.2025 12:45 - 16:00, Tietokantojen perusteet ja tietokantaohjelmointi TT00BB52-3017
- 10.02.2025 12:45 - 16:00, Tietokantojen perusteet ja tietokantaohjelmointi TT00BB52-3017
- 17.02.2025 12:45 - 16:00, Tietokantojen perusteet ja tietokantaohjelmointi TT00BB52-3017
- 24.02.2025 12:45 - 16:00, Tietokantojen perusteet ja tietokantaohjelmointi TT00BB52-3017
- 10.03.2025 12:45 - 16:00, Tietokantojen perusteet ja tietokantaohjelmointi TT00BB52-3017
Objective
The students know the principles of relational databases, can design and implement a simple database, know how to use relational database software and a completed database in the query language.
After the course the students will understand the central role of databases in information systems. The students will also understand the growing importance of databases with the growth and improvement of hardware, software and data transfer capacity. Key operating environments include WWW, electronic commerce, data generated by sensor networks, the Internet of Things and mobile environments.
Content
SQL basic functions
SQL commands
SQL and programming language
Basics of the relationship model
Basic operations of the relationship algebra
Relationship assignments
MySQL exercises, creating a database for a MySQL server
ASSIGNMENT (Learning assignment) (Design, ER model, creating a database, adding data, implementing a client-server program to manage database events)
Materials
Kurssimameriaali gitlab-versionhallinassa.
Teaching methods
Lähiopetus ja itsenäinen työskentely.
Tunneilla läsnäolo suotavaa.
Itsenäinen työskentely kattaa harjoituksia pääosin harjoitustietokantoja käyttäen.
Lisäksi pakollisia palautettavia harjoituksia
Kurssin lopuksi tentti.
Student workload
Kurssin laajuus 3 op.
Content scheduling
3op kurssilla pidetään 9 teorialähiopetuskertaa. Lähiopetuksessa tuntien sisällöt voivat vaihdella hieman, mutta pyrimme noudattamaan seuraavaa runkoa:
01: Jupyterhub ympäristön käyttöönotto
02: MariaDB docker asennus (EXTRA)
03: Johdantoa tietokantoihin
04: Normalisointi ja ER suunnittelu
05: Tietokannan hallinta
MySQL - Osa 1 - Tietokannan hallinta
06: Relaatiotietokantojen perusteita
MySQL - Osa 2 - Relaatiotietokantojen perusteita
MySQL - Osa 3 - Tietokantakyselyt
MySQL - Osa 4 - Tietokantakyselyt
07: Vaativammat tietokantakyselyt
MySQL - Osa 5 - Vaativammat tietokantakyselyt
08: Transaktiot ja Näkymät
MySQL - Osa 6 - Indeksien aloitus ja Transaktiot
MySQL - Osa 7 - Näkymät - VIEWS
09: Indeksit ja Tietokannan optimointi
10: Palautettavat harjoitukset (PAKOLLINEN)
11: Tentti
Evaluation scale
0 - 5
Assessment criteria, excellent (5)
The students are able to design and build a 3. normal format relational database from a given subject and to follow the theoretical rules given in the assignment
The students are able to perform demanding searches from the database with sql sentences.
The students have mastered updating the database in sql sentences.
Assessment criteria, good (3)
The students are able to explain the structure , the keys and the reference keys of a relational database
The students are able to draw an ER diagram of the given object and determine the database tables, the table attributes and the keys from a chart.
The students are able to explain the purpose of normalization and can initially normalize the database to the third normal database format
The students are able to retrieve data from the given database with SQL statements and different conditions and update the database with SQL statements.
The students are able to create a simple database with one of the database management software.
Assessment criteria, satisfactory (1)
The students can determine what a relational database is.
The students are able to name entities, attributes, and concepts in a completed ER diagram.
The students are able to draw a simple ER diagram of the given object and determine tables from the charts.
The students are able to give examples of table and reference keys.
The students are able to write simple SQL statements.
The students are able to create under supervision, a simple database with one of the database management software.
Assessment criteria, excellent (5)
Arvosana 5
Opiskelija osaa suunnitella ja rakentaa 3. normaalimuodossa olevan relaatiotietokannan annetusta kohteesta ja noudattaa työssä annettuja teoreettisia sääntöjä.
Opiskelija osaa suorittaa vaativiakin hakuja tietokannasta sql-lausein.
Opiskelija hallitsee tietokannan päivittämisen sql-lausein.
Toteutuksen arviointikriteerit, hyvä (3-4)
Arvosana 3-4
Opiskelija osaa selittää relaatiotietokannan rakenteen, avaimet ja viiteavaimet.
Opiskelija osaa piirtää ER-kaavion annetusta kohteesta ja määrittää kaaviosta tietokannan taulut,taulujen attribuutit ja avaimet.
Opiskelija osaa selittää normalisoinnin tarkoituksen ja osaa alustavasti normalisoida tietokannan 3. normaalimuotoon.
Opiskelija osaa hakea annetusta tietokannasta tietoja SQL-lausein erilaisin ehdoin ja päivittää tietokantaa SQL-lausein.
Opiskelija osaa muodostaa yksinkertaisen tietokannan jollakin tietokannan hallintaohjelmistolla.
Assessment criteria, satisfactory (1)
Arvosana 1-2
Opiskelija osaa määritellä, mikä on relaatiotietokanta.
Opiskelija osaa nimetä valmiista ER-kaaviosta entiteetit, attribuutit ja käsitteet.
Opiskelija osaa piirtää yksinkertaisen ER-kaavion annetusta kohteesta ja määritellä kaaviosta taulut.
Opiskelija osaa antaa esimerkkejä taulujen avaimista ja viiteavaimista.
Opiskelija osaa kirjoittaa yksinkertaisia SQL-lauseita.
Opiskelija osaa ohjatusti muodostaa yksinkertaisen tietokannan jollakin tietokannan hallintaohjelmistolla.