732G16 Databaser: design och programmering
Uppgift 3 - Implementera databasen och fylla med data
Motivering & Syfte
När man har skapat en relationsmodell som är normaliserad, och som kan hantera den data man har tänkt arbeta på, är det dags att skapa de faktiska tabellerna i en databas.
När tabellerna är skapade kan man fylla på databasen med data. I vissa fall kan detta göras från externa program, t ex webbenkäter eller maskiner som rapporterar in data t ex väderstationer som rapporterar in mätdata. I detta fall så har ni fått alla data i en fil, så ni behöver importera denna fil in i era tabeller.
Förberedelser
Hämta datafil
Ladda ner er datafil nedan och placera den i mappen "Z:\732G16\uppg3\".
Datafilen innehåller rader enligt nedan. Filen innehåller slumpad data och är individuell för gruppen. Det går alltså inte att jämföra delberäkningar (eller slutresultat) med andra grupper, för de ska vara olika.Statistik och dataanalys;LIU50007;4172579030;Lauree Egli;18,33;Statistisk analys av samhällsdata;HSTA21;10;1;G
Datafälten är alla godtyckligt långa, men separerade med semikolon. Filen innehåller inga semikolon utom de som används som separatorer, däremot kan andra konstiga tecken förekomma som har specialbetydelse för MySQL. Ett exempel är namn som innehåller accenter/apostrofer. Notera också att decimaltal representeras med decimalpunkt i filen.
Fälten är, i ordning:
- Programnamn
- Programkod (8 tecken)
- Personnummer (10 siffror)
- Namn
- Medelbetyg från gymnasiet (decimaltal, två decimaler)
- Kursnamn
- Kurskod (6 tecken långa)
- Poäng (decimaltal, vissa kurser har halva poäng)
- Obligatorisk (1 för ja, 0 för nej)
- Betyg på aktuell kurs
- Datafil grupp 1
- Datafil grupp 2
- Datafil grupp 3
- Datafil grupp 4
- Datafil grupp 5
- Datafil grupp 6
- Datafil grupp 7
- Datafil grupp 8
- Datafil grupp 9
- Datafil grupp 10
- Datafil grupp 11
- Datafil grupp 12
- Datafil grupp 13
- Datafil grupp 14
- Datafil grupp 15
- Datafil grupp 16
- Datafil grupp 17
- Datafil grupp 18
- Datafil grupp 19
- Datafil grupp 20
Genomförande
Skapa tabellerna
I kodskelettet finns det en fil som heter "Z:\732G16\uppg3\CreateTables.txt". Det är i denna fil ni skriver alla SQL kommandon som behövs för att skapa de tabeller ni behöver. Glöm inte bort integritetsbegränsningar, samt att ange InnoDB för att de skall upprätthållas.
När ni vill köra filen gör ni som ni gjort tidigare, öppna MySQL klienten och exekvera kommandot:
source Z:\732G16\uppg3\CreateTables.txt
Det kan vara bra att även skriva SQL kod som tar bort alla tabeller man skapat längst upp i sin CreateTables.txt fil. Detta för att man ska kunna göra ändringar i SQL koden som skapar tabellerna och starta om från början.
Importera data från datafil till databasen
I kodskelettet finns det en fil som heter "Z:\732G16\uppg3\ImportData.R". Det är i denna fil som ni skriver er R kod som skall hämta data från datafilen och skriva in data i er databas. Detta görs lite olika beroende på hur ni har designat er databas och vad ni satt för namn på tabeller och kolumner.
Om ni vid körning av R koden inser att ni kanske skrivit fel data till fel tabell eller kolumn, eller av annan anledning vill börja om från början, är det lämpligt att ta bort alla tabeller och skapa de igen.
Att skriva R kod gör man lättast i den körmiljö som heter RStudio. Denna körmiljö finns installerad och hittas i startmenyn. Här kan ni både öppna och redigera era filer samt köra den kod ni skrivit.
Jobba metodiskt, skriv lite kod i taget och testa att det fungerar. Det är smart att också öppna en MySQL klient så att ni kan kolla att data faktiskt skrivs in på rätt sätt i er databas.
Redovisning
Skicka filerna CreateTables.txt och ImportData.R till er assistent när ni är klara. I ämnesraden skriver ni "732G16 - Uppg 3 - Redovisning".
Deadline
2013-05-17
Övrigt
Instruktioner för RMySQL modulen i R
Sidansvarig: infomaster
Senast uppdaterad: 2013-04-02
