TDDI 60 TEKNISKA DATABASER, 4 poäng;

/Technical Databases/
För DI 2
Utbildningsområde: Teknik
Ämnesgrupp: Datateknik
Fördjupningsnivå: B

Mål:
Att ge kunskaper om principer och praktiska lösningar för lagring och återvinning av information i ett datorsystem, speciellt för stora datamängder och med tonvikt på teknik och tekniska tillämpningar.

Förkunskaper:
Grundläggande kunskaper om datorer och färdighet att hantera IDA:s SUN-system, motsvarande t ex kursen TDDA 07 Orientering datateknik och datorutrustning (ODD). Kunskaper om programmering, speciellt i språket C, motsvarande t ex kursen TDDI 36 Programmering i C. Kunskaper om datastrukturer och algoritmer, motsvarande någon av de kurser med det namnet som ges av IDA t ex TDDI 40 Datastrukturer och algoritmer för DI.

Organisation:
Kursen är uppbyggd som en serie föreläsningar och lektioner, omväxlande med datorlaborationer. Viss handledning finns tillgänglig för övningsuppgifterna.
Mycket av kursinnehållet kommer att gås igenom på föreläsningarna och övas i övningsuppgifterna, men det är också nödvändigt att på egen tid läsa i kurslitteraturen, arbeta med kursmaterialet och öva vid datorn.

Kursinnehåll:
I den här kursen går vi igenom de grundläggande begreppen inom databasområdet. Databasområdet handlar om hur man med hjälp av datorer kan lagra och hantera data, och då särskilt stora mängder data.
Om man ska skapa en databas som beskriver en del av verkligheten, t ex ett företag, brukar man börja med att göra en beskrivning av hur den delen av verkligheten ser ut och fungerar, en s k begreppsmässig datamodell. Vi tar upp en metod för att göra sådana modeller som kalla Entity-Relationschip-modellering.
Den begreppsmässiga modellen har egentligen ingenting med datorer att göra, utan är bara en beskrivning av verkligheten som lika gärna skulle kunna användas t ex av någon som vill analysera hur företaget fungerar. Om man vill skapa en databas måste den begreppsmässiga modellen översättas till en datamodell som kan implementeras i form av en databas. Det finns flera sådana datamodeller och i kursen går vi igenom den hierarkiska datamodellen, näterksmodellen, relationsmodellen och objektorienterade modeller. Vi kommer att ägna oss mest åt relationsmodellen och se hur man gör för att modellera sina data med den.
En databas är en samling data. Normalt hanteras den av ett särskilt program eller programsystem som kallas databashanterare eller databashanteringssystem. I kursen går vi igenom hur en databashanterare fungerar, bl a hur den internt lagrar data, hur den hindrar obehöriga användare från att komma åt data, och hur den klarar av att låta flera användare samtidigt arbeta med och ändra samma data.
För att vi ska kunna komma åt databasen, d v s ställa frågor om de data som finns, ändra dessa data, eller definiera vilka data som ska lagra, erbjuder databashanteraren flera olika gränssnitt, t ex olika frågespråk. Vi kommer att stuera några sådana gränssnitt, främst för relationsmodellen. Här tittar vi mest på frågespråket SQL.

Kurslitteratur:
Elmasri, R., Navathe, S.B.: Fundamentals of Database Systems, 2nd Ed, Benjamin/Cummings, 1994.
Padron-McCarthy, Thomas: Kurskompendium för kursen TDDI 60 Tekniska Databaser, IDA, 1994.

Examination:
LAB 1 En laborationskurs. Skriftlig och muntlig redovisning av de övningsuppgifter som ingår i kursen.
TEN 1 En skriftlig tentamen.