6//4 Information Vi har ingen kursbok Kanske ändå användbart med sammanhängande text inför Seminarieuppgift och Lab? Utkast: Databasteknik och informationssystem DD370 - Introduktion till SQL (2 sidor) - Finn under fliken Föreläsningar på kurswebben Föreläsning 4: ER-modellen otera - Absolut inte samma kvalité som kursbok - Vi får se om det var användbart - Komplement till Föreläsningsanteckningar och annat material Dagens föreläsning: ERmodeller Dagens föreläsning ER-modellen amn Regr - Entiteter - Samband odell :, :, : Loopar Fullständigt deltagande Flervägs-samband - Attribut Regr odell Ägare yckelattribut abc23 BW 8300-0000 Härledda attribut def00 Volvo 8300-0000 Obs: Relationer i Base är inte exakt samma sak som Samband i ER-modellen Se senare föreläsning amn 9300-0000 Kalle 070-000000 8300-0000 Lisa 073-000000 Påminnelse: Kursens mål. Förklara ett databashanteringssystems funktioner och uppbyggnad 2. Använda frågespråk för att formulera frågor 3. odellera och strukturera data utgående från en given problemställning 4. Använda ett enkelt beslutsstödssystem. 3: ER-modellen : Tabeller 2: SQL-frågor
6//4 Varför ER-modeller ER-modellen är man skapar en databas: - Steg: ER-modell - Steg2: Skapa tabellerna Varför inte skapa tabeller direkt? - Tabeller kräver ibland speciallösningar (se kommande Föreläsning) - Tabeller kan vara svåröverskådliga Regr ER står för Entitiy-Relationship Entities (entiteter-saker) Relationships (samband) (Attribut) odell amn ånga kolumner ånga kopplingar dem emellan - ER-modeller ger bättre design (visar erfarenhet) Varför bry sig? (om :) Tre sorter - : (ett till ett) Kör Regr odell amn - : (ett till många) - : (många till många) Hus Regr odell Ägare abc23 BW 8300-0000 def00 Volvo 8300-0000 amn 9300-0000 Kalle 070-000000 8300-0000 Lisa 073-000000 Varför bry sig? (om :) Varför bry sig? (om :) Objekt r Lgh Lägenhet Kvm Lghr Kvm Ägare 22 54 8300-0000 23 02 8300-0000 Går inte amn amn 9300-0000 Kalle 070-000000 8300-0000 Lisa 073-000000 Lgh Lghr Lägenhet Kvm 00 54 23 02 Lghr 23 9300-0000 23 8300-0000 00 8300-0000 amn 9300-0000 Kalle 070-000000 8300-0000 Lisa 073-000000 : blir alltid egen tabell (: bara ibland) 2
6//4 Hur avgör man :, :, :? Vad är rimligast? Film össa Hund Sett Bär Leker med Hitta på två saker av varje entitet - Gula huset, Röda huset - Kalle, Lisa Välj en på ena sidan: Entitet - Entitet=Lisa Kan Entitet Samband båda de andra entiteterna? - Kan Lisa Äga både Gula huset och Röda huset? Ja à på de bådas sida ej à på de bådas sida - på hus-sidan Välj en på andra sidan: Entitet2 - Entitet2=Röda huset Kan Entitet2 Samband båda de andra entiteterna? - Kan Röda huset Ägas av både Kalle och Lisa? Ja à på de bådas sida ej à på de bådas sida - på person-sidan Om :, byt mot : Hus (loopar) Vad är rimligast? Stuga Bokat Loopar går utmärkt - : (ett till ett) Gift - : (ett till många) Stuga Ligger i Område - : (många till många) Boxare ästare Viktklass Vän otera: inte gift med sig själv, gift med samma typ av entity (loopar) Fullständigt deltagande Vilket är rimligast? Dubbelsträck betyder att Entiteten måste delta i Sambandet Hatar Rullande Kör Gillar Varje person måste inte köra en rullande bil Varje rullande bil måste köras av en person Bra sätt att garantera relevant databas (kräva viss info) 3
6//4 Fullständigt deltagande yckel-attribut: Unika Fråga: Vilket är rimligast? Regr odell amn Regr odell Ägare amn abc23 BW 8300-0000 9300-0000 Kalle 070-000000 def00 Volvo 8300-0000 8300-0000 Lisa 073-000000 åste finnas nyckel-attribut i varje tabell (unika rader) yckel-attribut: Unika Härledda attribut (vyer) Fråga: Vilket är rimligast som yckel-attribut? Regr odell amn edl.nr Email amn Räknas ut på nytt från annan data Ritas med streckad linje Använd Vyer för att räkna ut härledda attribut Antal bilar åste finnas nyckel-attribut i varje tabell (unika rader) Relation à Entity (objektifiering) Flervägssamband är man vill spara flera olika samband mellan samma Entities Samband kan vara mellan fler än två entiteter Film Har sett Film Har sett Film Sågs Biobesök Deltog Biograf Senare idag: Kö till SSSB (student, område, lgh-typ) 4
6//4 Dagens föreläsning Hur många tabeller och kolumner behövs? ER-modellen - Entiteter - Samband :, :, : Loopar Fullständigt deltagande Flervägs-samband tabell med kolumn med kolumn vardera med 2 kolumner vardera amn - Attribut yckelattribut Härledda attribut tabell med 2 kolumner Hur många tabeller och kolumner behövs? tabell med kolumn tabell med 2 kolumner vardera Adress amn amn tabell med 3 kolumner med kolumn vardera 4 tabeller tabell tabell Boxare ästare Viktklass Antal telefoner amn 4 tabeller 5
6//4 tabell 0 tabeller tabell Vän amn Exempel: Lgh-uthyrning Slut. Typ SSSB Databas över kunder och objekt öblerat/omöblerat Kö och förturskö Lgh Hus, område, adress, yta, hyra, invertarier Studenter: - Adress, tfn (många), etc - Har kontrakt på vad? - Köar för vad? (område, storlek, lgh-typ) 6