Skillnad mellan versioner av "Kap 12 Databaser (45)"

Från Mathonline
Hoppa till: navigering, sök
(Skapade sidan med '__NOTOC__ <big>Tis 5 dec, kl 9-12</big> {| border="0" cellspacing="0" cellpadding="0" height="30" width="100%" | style="border-bottom:1px solid #797979" width="5px" |  ...')
 
m
Rad 16: Rad 16:
  
 
= <b><span style="color:#931136">Kap 12 &nbsp; Databaser (forts.)</span></b> =
 
= <b><span style="color:#931136">Kap 12 &nbsp; Databaser (forts.)</span></b> =
 +
= <b><span style="color:#931136">5.6 &nbsp; Att skapa och designa en databas i C#</span></b> =
 +
<div class="ovnE">
 +
=== <b><span style="color:#931136">Kundens kravspecifikation</span></b> ===
 +
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Kursverksamhet.jpg]]</div>
  
  
= <b><span style="color:#931136">12.8 &nbsp; Datahämtning med en SQL klient</span></b> =
+
<big><big>
<div class="ovnC">
+
Skapa en databas för kursverksamheten som svarar mot kundens kravspecifikation.
=== <b><span style="color:#931136">Projektet SQLclient</span></b> ===
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: SQLclient.jpg]]</div>
+
  
 +
Projektets genomförande beskrivs i sin helhet i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 197-209
 +
</big></big>
 +
</div>
  
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: I_detta_avsnb.jpg]]</div>
 
  
 +
= <b><span style="color:#931136">Databasmodellering</span></b> =
 +
<div class="ovnC">
 +
=== <b><span style="color:#931136">Entity-Relationship diagram (ER)</span></b> ===
 +
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Databasmodella.jpg]]</div>
  
<big><big>Hela projektets beskrivning finns i: &nbsp; [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <b><span style="color:blue">Kursboken</span></b>], sid 349-360</big></big>
 
</div>
 
  
 +
=== <b><span style="color:#931136">ER diagrammet består av entiteter och relationer mellan dem.</span></b> ===
 +
<big>
 +
* &nbsp; &nbsp; Varje ruta är en <b><span style="color:red">entitet</span></b>. Varje entitet har ett antal <b><span style="color:red">attribut</span></b> dvs egenskaper.
  
<div class="ovnE">
+
* &nbsp; &nbsp; En entitet är något viktigt för verksamheten som man behöver lagra information om.
=== <b><span style="color:#931136">Att ladda ned databasfilen Books.mdf, se</span> [[Kap_12_Databaser_(42)#Att_ladda_ned_en_exempeldatabas|<span style="color:blue">genomgång 42</span></b>.]] ===
+
  
 +
* &nbsp; &nbsp; Entiteter är nyckelbegrepp – jämförbart med klasser i objektorienterad programmering. 
  
=== <b><span style="color:#931136">Att infoga databasen Books i projektet</span></b> ===
+
* &nbsp; &nbsp; Varje entitet kommer att bli en <b><span style="color:red">tabell</span></b> när modellen implementeras.
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Steg_1_Infoga_DB_i_Proja.jpg]]</div>
+
</div>
+
  
 +
* &nbsp; &nbsp; Varje attribut kommer att bli en <b><span style="color:red">kolumn</span></b> när modellen implementeras.
  
= <b><span style="color:#931136">Steg 1: Att skapa ett grafiskt gränssnitt i formen</span></b> =
+
* &nbsp; &nbsp; Modellen visar vilka kolumner som ska bli primärnycklar: <b><span style="color:red">PK (Primary Key)</span></b>
<div class="ovnC">
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: GUI_i_Formen.jpg]]</div>
+
  
 +
&nbsp; &nbsp;  &nbsp; &nbsp;  &nbsp; och vilka som ska bli främmande nycklar: <b><span style="color:red">FK (Foreign Key)</span></b>.
  
=== <b><span style="color:#931136">Databasstrukturen i DataSet Designer</span></b> ===
+
* &nbsp; &nbsp; Mellan vissa tabeller finns <b><span style="color:red">relationer</span></b> som är ritade med linjer:
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: DatasetDesignerb.jpg]]</div>
+
  
 +
&nbsp; &nbsp;  &nbsp; &nbsp;  &nbsp; En kurs kan ha flera kursdeltagare, medan en kursdeltagare endast läser en kurs.
  
=== <b><span style="color:#931136">Klassen TableAdapter</span></b> ===
+
&nbsp; &nbsp; &nbsp; &nbsp;  &nbsp; En instruktör kan undervisa i flera kurser, medan en kurs endast har en instruktör.
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Klass_TableAdapter.jpg]]</div>
+
</big>
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Anmärkning</span></b> =
+
= <b><span style="color:#931136">Att skapa en tom databas samt tabeller</span></b> =
 
<div class="ovnA">
 
<div class="ovnA">
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Anm_Add_Column.jpg]]</div>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: TomDB.jpg]]</div>
 +
<big>* &nbsp; &nbsp; Följ instruktionerna i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 198-202.
 +
</big>
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Steg 2: Att exekvera egna SQL satser</span></b> =
+
= <b><span style="color:#931136">Att koppla projektets Dataset till databasen</span></b> =
 
<div class="ovnE">
 
<div class="ovnE">
<big><big> &nbsp; &nbsp; Följ instruktionerna i [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <b><span style="color:blue">kursboken</span></b>], sid 351-356.
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: AddConnection.jpg]]</div>
</big></big>
+
<big>* &nbsp; &nbsp; Följ instruktionerna i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 202-204.
 +
</big>
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Steg 3: Att förse SQL klienten med en ComboBox-kontroll</span></b> =
+
= <b><span style="color:#931136">Att skapa relationer mellan tabeller och rita ER diagrammet</span></b> =
 
<div class="ovnC">
 
<div class="ovnC">
<big><big> &nbsp; &nbsp; Följ instruktionerna i [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <b><span style="color:blue">kursboken</span></b>], sid 356-360.
+
=== <b><span style="color:#931136">DataSet Designer:</span></b> ===
</big></big>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: DatasetDesigner.jpg]]</div>
 +
<big>* &nbsp; &nbsp; Följ instruktionerna i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 205-207.
 +
</big>
 +
</div>
 +
 
 +
 
 +
= <b><span style="color:#931136">Att lägga in data i tabellerna</span></b> =
 +
<div class="ovnA">
 +
<big>* &nbsp; &nbsp; Följ instruktionerna i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 207-209.
 +
</big>
 
</div>
 
</div>
  

Versionen från 4 december 2023 kl. 10.33

Tis 5 dec, kl 9-12


        <<  Agenda          Genomgång 45          Övningar 45          Innehåll & struktur          Nästa lektion  >>      


Kap 12   Databaser (forts.)

5.6   Att skapa och designa en databas i C#

Kundens kravspecifikation

Kursverksamhet.jpg


Skapa en databas för kursverksamheten som svarar mot kundens kravspecifikation.

Projektets genomförande beskrivs i sin helhet i kursboken, sid 197-209


Databasmodellering

Entity-Relationship diagram (ER)

Databasmodella.jpg


ER diagrammet består av entiteter och relationer mellan dem.

  •     Varje ruta är en entitet. Varje entitet har ett antal attribut dvs egenskaper.
  •     En entitet är något viktigt för verksamheten som man behöver lagra information om.
  •     Entiteter är nyckelbegrepp – jämförbart med klasser i objektorienterad programmering.
  •     Varje entitet kommer att bli en tabell när modellen implementeras.
  •     Varje attribut kommer att bli en kolumn när modellen implementeras.
  •     Modellen visar vilka kolumner som ska bli primärnycklar: PK (Primary Key)

          och vilka som ska bli främmande nycklar: FK (Foreign Key).

  •     Mellan vissa tabeller finns relationer som är ritade med linjer:

          En kurs kan ha flera kursdeltagare, medan en kursdeltagare endast läser en kurs.

          En instruktör kan undervisa i flera kurser, medan en kurs endast har en instruktör.


Att skapa en tom databas samt tabeller

*     Följ instruktionerna i kursboken, sid 198-202.


Att koppla projektets Dataset till databasen

*     Följ instruktionerna i kursboken, sid 202-204.


Att skapa relationer mellan tabeller och rita ER diagrammet

DataSet Designer:

DatasetDesigner.jpg

*     Följ instruktionerna i kursboken, sid 205-207.


Att lägga in data i tabellerna

*     Följ instruktionerna i kursboken, sid 207-209.



Gå vidare till:        när du är klar med denna genomgång.











Copyright © 2023. All Rights Reserved.