7.sitzung (Datenbanktechnologien)

502 Aufrufe

Veröffentlicht am

-

Veröffentlicht in: Internet
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
502
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
400
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

7.sitzung (Datenbanktechnologien)

  1. 1. Universität zu Köln RRZK Folie: 1 Datenbanktechnologie Übung, Sommersemester 2016 13./14. Juni 2016 – NodeJS Einführung Christoph Stollwerk lehre@christoph-stollwerk.de
  2. 2. Aufgaben
  3. 3. Aufgabe 1 • Erstellen Sie ein vollständiges Entity- Relationship-Diagramm für Ihre – in den letzten Wochen erstellte –Datenbank (Bibliothek, Medienarchiv, Produkte, Personen, Bilder), die u.a. folgende Sachverhalte abbildet: – Nutzer leihen/kaufen/nutzen Dinge für einen bestimmten Zeitraum. – Jedem Nutzer ist eine Rolle (z.B. Student, Dozent, Käufer, Verkäufer, Abonnent, etc. ) zugewiesen, die den Preis für die Ausleihe/Nutzung/Kauf festlegt. – Es können mehrere Exemplare des gleichen Dings existieren, man kann also zwischen einer Sache und einem physisch vorhandenen Exemplar unterscheiden. Abgabeformat (Bild oder PDF) • Sie können beliebige Software verwenden (siehe z.B. die Links auf der Seminarseite)
  4. 4. Aufgabe 2 • Erstellen Sie die dem ERD entsprechenden Tabellen mit Hilfe von SQL. – Achten Sie dabei auf die korrekte Vergabe von Indizes und Foreign-Key- Contraints.
  5. 5. NodeJS
  6. 6. Dynamische Webseiten
  7. 7. Dynamische Webseiten
  8. 8. NodeJS • Open-Source • Cross-Plattform Serverseitige Laufzeitumgebung(V8) • Kein Javascript-Framwork! • ECMA-Script • Eventbasierte Architektur z.B. für – asynchrones IO – Real-time Web-Anwendungen (Kommunikation/Spiele/etc.) • uvm…
  9. 9. Variablen • Genauso wie in Javascript • Sind dynamisch typisiert
  10. 10. Parameter bei Seitenaufrufen • Spezielle Variablen, die mit „req“ (request) und „res“ (reponse) zur Auswertung übergebener Parameter genutzt werden können
  11. 11. Bedingungen • Können natürlich verschachtelt werden
  12. 12. Vergleiche • Vergleichsoperatoren: • „<“, „>“, „<=“, „>=“, „==“, „!=“ • Logische Operatoren: • „&&“ oder „and“, „||“ oder „or“ , • „!“ (nicht)
  13. 13. Schleifen
  14. 14. Wahrheitswerte • Zum Beispiel: 10 > 12 => false 42 > 12 => true
  15. 15. Arrays • Gruppieren zusammengehörige Daten unter einer Variablen. • Numerisch indizierte Arrays: - var myArray = new Array(17.5, 19.2, 21.8, 21.6, 17.5); - write(myArray[3]); // Ausgabe: "21.6“„ • Assoziative Arrays: - var myArray = new Array(Montag"=>17.5, “Dienstag"=>19.2, "Mittwoch"=>21.8, "Donnerstag"=>21.6); write(myArray["Dienstag"]); - // Ausgabe: "19.2"
  16. 16. NodeJS & MySQL
  17. 17. NodeJS Module package.json • Projektdefinition • Datenbankverbindung aufbauen • DB-Query absetzen • HTTP Server erstellen ndex.js(1)
  18. 18. NodeJS Module Index.js(2) • HTML vorbereiten • Query-Ergebnis ausgeben (HTML) • HTML an Clienten zurücksenden (Browser)
  19. 19. Praxisteil: NodeJS & MySQL from IntelliJ
  20. 20. NodeJS in IntelliJ (hello-sql) 1. Installieren Sie NodeJS 4.4.5 (LINK) und merken Sie sich den Installationspfad. 2. MySQL-Datenbank & Apache Webserver in XAMPP-Control starten. 1. Prüfen Sie unter PHPMyAdmin ob Sie die ‚employees‘ Datenbank erfolgreich importiert haben 3. Starten Sie IntelliJ. 4. Installieren das NodeJS-Plugin in IntelliJ (Startfenster -> Configure -> Plugins -> ggf. Install Jetbrains Plugin… -> in der Suche „NodeJS“ eingeben) 5. Extrahieren Sie das bereitgestellte NodeJS-Projekt „hello-sql“ (LINK) in einen Ordner Ihrer Wahl. 6. Öffnen Sie den Projekt-Ordner (gemeint ist der Ordner mit index.js & package.json) in IntelliJ. (nicht importieren!) 7. Legen Sie zwei Run-Konfigurationen an 1. NPM install (und führen sie diese mit einem Klick auf den dann grünen Play-Knopf aus) 2. Node index.js 8. Browser aufrufen und unter localhost:8080 das Ergebnis überprüfen
  21. 21. Hilfestellungen 4. Bereich Universitätsweiter Service Abteilung Autorenname 13.06.2016 Universität zu Köln RRZK Folie: 23
  22. 22. Bereich Universitätsweiter Service Abteilung Autorenname 13.06.2016 Universität zu Köln RRZK Folie: 24 7. NPM Run Config NodeJS Run Config Hilfestellungen
  23. 23. Aufgaben
  24. 24. Aufgabe 1 • Importieren Sie das ‘hello-mysql’ Projekt in Ihre Entwicklungsumgebung (IntelliJ). • Überprüfen Sie, ob es funktioniert, indem Sie es mit der bei Ihnen lokal importierten employees-DB starten.
  25. 25. Aufgabe 2 • Erstellen Sie voerst für jede Tabelle (<table>…) in Ihrer Datenbank eine HTML-Ausgabe, sodass beim Seitenaufruf mehrere Tabellen im Browserfenster erscheinen.
  26. 26. Aufgabe 3 • Erstellen Sie genau eine Gesamt- Tabelle die den Inhalt Ihrer Datenbank auf Basis des ER-Modells (Literatur, AV, Produkte, Personen, Bilder) wiedergibt. (Keine ID’s, Primary Keys, etc. / kein CSS)
  27. 27. Aufgabe 3 • Erstellen Sie ein erstes Suchformular für Ihre selbst erstellte Datenbank. – Gesucht werden soll vorerst in einem einzigen Feld. (Welches dürfen Sie sich aussuchen) – Als Ergebnis soll eine Tabelle angezeigt werden, die zusätzliche Informationen beinhaltet (Z.b. die Jobbezeichnung (titles.title) der gefundenen Mitarbeiter enthält).
  28. 28. FRAGEN?? ?
  29. 29. Herzlichen Dank!

×