fix structure
Before Width: | Height: | Size: 180 KiB After Width: | Height: | Size: 180 KiB |
Before Width: | Height: | Size: 340 KiB After Width: | Height: | Size: 340 KiB |
Before Width: | Height: | Size: 308 KiB After Width: | Height: | Size: 308 KiB |
Before Width: | Height: | Size: 561 KiB After Width: | Height: | Size: 561 KiB |
Before Width: | Height: | Size: 278 KiB After Width: | Height: | Size: 278 KiB |
Before Width: | Height: | Size: 3 MiB After Width: | Height: | Size: 3 MiB |
39
KN01/readme.md
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
# A: Installation
|
||||||
|
|
||||||
|
connection string:
|
||||||
|
`mongodb://admin:MyPassword.42@23.22.210.87:27017/?authSource=admin&readPreference=primary&ssl=false`
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
`authSource=admin` gibt an, dass die Authentifizierungsdaten in der "admin" Datenbank gespeichert sind. Das ist notwendigweil der Benutzer "admin" in der admin-Datenbank erstellt wurde
|
||||||
|
|
||||||
|
mit sed kann man werde ein einer datei ersetzen
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
# B: Erste Schritte GUI
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Ich müsste das datum so definieren:
|
||||||
|
"letztesLogin": {
|
||||||
|
"$date": "2024-02-18T14:45:00.000Z"
|
||||||
|
}
|
||||||
|
Dann weiss mongodb direkt, dass es ein datum ist.
|
||||||
|
Man kann es so definieren dass man direkt nacher das datum verwenden kann um z.b. Zeit auszurechen zum letzten login
|
||||||
|
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
# C: Erste Schritte CLI
|
||||||
|
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
Tables habe ein fixes Schema. Jede spalte hat ein Datentyp und alle Zielen müssen dem Schema folgen.
|
||||||
|
Collections sind flexibel Dokumente in der gleichen Collection können unterschiedliche Felder haben
|
Before Width: | Height: | Size: 238 KiB After Width: | Height: | Size: 238 KiB |
Before Width: | Height: | Size: 127 KiB After Width: | Height: | Size: 127 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 101 KiB After Width: | Height: | Size: 101 KiB |
Before Width: | Height: | Size: 166 KiB After Width: | Height: | Size: 166 KiB |
18
KN02/readme.md
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
# A: Konzeptionelles Datenmodell
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# B: Logisches Modell für MongoDB
|
||||||
|
|
||||||
|

|
||||||
|
Spiele werden als eigene collection gespeichert, weil sie von vielen Spielern referenziert werden und selten geändert werden. Das vermeidet auch duplikate.
|
||||||
|
|
||||||
|
Achievements werden häufig nach allen Spielern gefiltert, die sie erreicht haben.
|
||||||
|
"errungen_von" speichert, welche Spieler ein Achievement erreicht haben.
|
||||||
|
|
||||||
|
# C: Anwendung des Schemas in MongoDB
|
||||||
|
|
||||||
|
[db.js](db.js)
|
||||||
|
|
17
KN03/readme.md
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
# A: Daten einfügen
|
||||||
|
|
||||||
|
[create_Data.js](create_Data.js)
|
||||||
|
|
||||||
|
# B: Daten löschen
|
||||||
|
|
||||||
|
[delete_data_1.js](delete_data_1.js)
|
||||||
|
[delete_data_2.js](delete_data_2.js)
|
||||||
|
|
||||||
|
# C: Daten auslesen
|
||||||
|
|
||||||
|
[read_data.js](read_data.js)
|
||||||
|
|
||||||
|
|
||||||
|
# D: Daten verändern
|
||||||
|
|
||||||
|
[update_data.js](update_data.js)
|
12
KN04/readme.md
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
A) Aggregationen (50%)
|
||||||
|
|
||||||
|
[aggregation_1.js](aggregation_1.js)
|
||||||
|
|
||||||
|
B) Join-Aggregation (30%)
|
||||||
|
|
||||||
|
[join_aggregation.js](join_aggregation.js)
|
||||||
|
|
||||||
|
C) Unter-Dokumente / Arrays (20%)
|
||||||
|
|
||||||
|
[unter_dokumente.js](unter_dokumente.js)
|
||||||
|
|
Before Width: | Height: | Size: 173 KiB After Width: | Height: | Size: 173 KiB |
6
KN05/readme.md
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# A: Rechte und Rollen
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|

|
23
readme.md
|
@ -1,18 +1,15 @@
|
||||||
# A: Konzeptionelles Datenmodell
|
|
||||||
|
|
||||||

|
# KN01
|
||||||
|
[KN01](KN01/readme.md)
|
||||||
|
|
||||||
|
# KN02
|
||||||
|
[KN02](KN02/readme.md)
|
||||||
|
|
||||||
|
# KN03
|
||||||
|
[KN03](KN03/readme.md)
|
||||||
|
|
||||||
# B: Logisches Modell für MongoDB
|
# KN04
|
||||||
|
[KN04](KN04/readme.md)
|
||||||

|
|
||||||
Spiele werden als eigene collection gespeichert, weil sie von vielen Spielern referenziert werden und selten geändert werden. Das vermeidet auch duplikate.
|
|
||||||
|
|
||||||
Achievements werden häufig nach allen Spielern gefiltert, die sie erreicht haben.
|
|
||||||
"errungen_von" speichert, welche Spieler ein Achievement erreicht haben.
|
|
||||||
|
|
||||||
# C: Anwendung des Schemas in MongoDB
|
|
||||||
|
|
||||||
[db.js](db.js)
|
|
||||||
|
|
||||||
|
# KN05
|
||||||
|
[KN05](KN05/readme.md)
|