update
BIN
Writerside/images/image_669.png
Normal file
After Width: | Height: | Size: 8.6 KiB |
BIN
Writerside/images/image_670.png
Normal file
After Width: | Height: | Size: 83 KiB |
BIN
Writerside/images/image_671.png
Normal file
After Width: | Height: | Size: 7.6 KiB |
BIN
Writerside/images/image_672.png
Normal file
After Width: | Height: | Size: 19 KiB |
BIN
Writerside/images/image_673.png
Normal file
After Width: | Height: | Size: 142 KiB |
BIN
Writerside/images/image_674.png
Normal file
After Width: | Height: | Size: 144 KiB |
BIN
Writerside/images/image_675.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
Writerside/images/image_676.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
Writerside/images/image_677.png
Normal file
After Width: | Height: | Size: 12 KiB |
@ -153,4 +153,66 @@
|
||||
|
||||

|
||||
|
||||
#### Minimalkardinalität 1 → "Richtung 1"
|
||||
#### Minimalkardinalität 1 → "Richtung 1"
|
||||

|
||||

|
||||
|
||||
```sql
|
||||
ABTEILUNGSNR INT4 not null,
|
||||
constraint FK_MA_ZUGEH_ABT foreign key (ABTEILUNGSNR)
|
||||
references ABTEILUNG (ABTEILUNGSNR)
|
||||
ON delete restrict on update restrict
|
||||
```
|
||||
|
||||
#### Minimalkardinalität 0 → "Richtung 1"
|
||||
- nahezu identisch zu [1...1](#minimalkardinalit-t-1-richtung-1)
|
||||
- hier möglichkeit für `Abteilungsnr = null`
|
||||
|
||||
```sql
|
||||
ABTEILUNGSNR INT4 null,
|
||||
constraint FK_MA_ZUGEH_ABT foreign key (ABTEILUNGSNR)
|
||||
references ABTEILUNG (ABTEILUNGSNR)
|
||||
ON delete restrict on update restrict
|
||||
```
|
||||
|
||||
#### Minimalkardinalität 0 bzw. 1 → Vielfalt
|
||||
- 1. NF erlaubt es nicht, da Collection-Datentypen nicht erlaubt sind
|
||||
- vor allem für Fremdschlüsselspalten
|
||||
- wenn 0/1..* → allein über constraints nicht implementierbar
|
||||
- kann man dann über Trigger machen (Kapitel 6)
|
||||
|
||||
→ Umwandeln in [n:m Assoziation](#umwandlungsregel-n-m-assoziation)
|
||||
|
||||
#### Umwandlungsregel n:m Assoziation
|
||||
##### 1..*:1..* Assoziation {id="1-1-assoziation_1"}
|
||||

|
||||
- Einfügen einer neuen Tabelle, welche aus den anderen beiden Tabellen jeweils einen Fremdschlüssel hat
|
||||
- Primärschlüssel jeweils als `concatenated key` einfügen
|
||||
- dann muss er immer mit drin sein
|
||||
- dadurch kann jede Zeile aus beiden Tabellen auf mehrere aus der anderen verlinken
|
||||
- _geht dann auch mit >2 Tabellen_
|
||||
|
||||
|
||||
##### 0..*:0..* Assoziation
|
||||
- Vier Alternativen
|
||||
1. FK bei R1
|
||||
2. FK bei R2
|
||||
3. FK bei R1 und R2
|
||||
4. m:n Relation einfügen wie [hier](#umwandlungsregel-n-m-assoziation)
|
||||
- Hauptnavigationsrichtung der Anwendung entscheidet
|
||||
|
||||
##### Assoziation mit sich selbst (Stückliste)
|
||||
> Selbstreferenzierende n:m Assoziation
|
||||
|
||||
###### Beispiel Stückliste Fahrrad
|
||||

|
||||

|
||||
- man verfährt wie bei der n:m Beziehung durch Einfügen einer Assoziationsklasse
|
||||
- 
|
||||
- um Fahrradstückliste zu implementieren sind also 2 Tabellen notwendig:
|
||||
- | Teileliste | Stückliste |
|
||||
|---------------------------------|---------------------------------|
|
||||
|  |  |
|
||||
|
||||
|
||||
### Abbildung Vererbungshierarchien
|
||||
|