Daten Bank. 5. Vorlesung
|
|
- Rudolph Schneider
- vor 5 Jahren
- Abrufe
Transkript
1 Daten Bank 5. Vorlesung
2 10:45 Uhr Nils Dallmayer klärt Fragen zu Teil 1 Dr. Karsten Tolle PRG2 SS
3 Klausuranmeldung bis 16. Juli Anmeldung online über QIS/LFS (Details unter: für Studierende der: Informatik, Bioinformatik, Physik Mathematik, Geographie Lehramt - bitte eine kurze an: tolle@dbis.cs.uni-frankfurt.de Alle anderen (Linguistik, ) : Anmeldung per Zettel (PDF auf PRG2-Seite)! im Briefkasten des Prüfungsamtes Informatik einwerfen (Robert-Mayer-Str Erdgeschoss) Dr. Karsten Tolle PRG2 SS
4 4. VL von bis Person (0,n) lebt_in (0,n) Ort AusweisNr. Name Vorname PLZ Ortsname Datenaustauschformate: CSV, JSON, XML, SQL: create insert select 1. Normalform Schlüssel und Funktionale Abhängigkeiten Dr. Karsten Tolle PRG2 SS
5 Heute von bis Person (0,n) lebt_in (0,n) Ort AusweisNr. Name Vorname PLZ Ortsname Datenaustauschformate: CSV, JSON, XML, SQL: create insert select 1. Normalform Schlüssel und Funktionale Abhängigkeiten 2. Normalform Sicherheit Dr. Karsten Tolle PRG2 SS
6 Sicherheit warum ist die so wichtig? IoT Internet of Things der Kühlschrank am Netz Dr. Karsten Tolle PRG2 SS
7 Gesetz zum Nachlesen: Dr. Karsten Tolle PRG2 SS
8 Datenschutz-Grundverordnung DSGVO Dr. Karsten Tolle PRG2 SS
9 Datenlecks zum Stöbern (Daten aus 2016) (Listen für ) nik-die-wichtigsten-hackerangriffe html ( ) Dr. Karsten Tolle PRG2 SS
10 Zone-h.com Dr. Karsten Tolle PRG2 SS
11 Dr. Karsten Tolle PRG2 SS
12 Dr. Karsten Tolle PRG2 SS
13 SQL Injection (böswilliges) Einschleusen oder Verändern von SQL-Befehlen an die Datenbank durch den Benutzer.
14 Testen: =mutillidae/mutillidae-deliberatelyvulnerable-php-owasp-top-10 Bietet verschiedene Angriffsvarianten: SQL-Injection, XSS,
15 Sicherheit - Datenbanksysteme 3-Schicht Architektur Bild vom BSI IT-Grundschutz-Katalog: Dr. Karsten Tolle PRG2 SS
16
17 bei schlechter Sicherheit ist nicht nur die Datenbank gefährdet! Dateien lesen: select LOAD_FILE('c:\\praegeherren.json'); Dateien schreiben: select count(*) from prg2.bundeslaender INTO dumpfile 'Ausgabe.txt'; select * from prg2.bundeslaender INTO OUTFILE 'Ausgabe2.txt'; ## gibt an, wo die Ausgaben abgelegt werden Dr. Karsten Tolle PRG2 SS
18 Benutzer und Rechte CREATE USER test IDENTIFIED BY PASSWORD li720lhjlj2' erzeugt einen neuen Benutzer GRANT select ON star_trek.* TO test weist dem Benutzer test die select Rechte für alle Tabellen der DB star_trek zu REVOKE select ON star_trek.* from test nimmt ihm die Rechte wieder GRANT select ON star_trek.offizier TO test weist dem Benutzer test die select Rechte für die Tabelle offizier zu Siehe auch: Dr. Karsten Tolle PRG2 SS
19 Grant und Revoke unter Workbench Dr. Karsten Tolle PRG2 SS
20 Server Variablen richtig setzten my.ini oder my.cnf Windows z.b.: C:\ProgramData\MySQL\MySQL Server 5.x Linux (my.cnf) z.b.: /etc/my.cnf or mysql-data-dir/my.cnf select Aufgabenblatt 12 Aufgabe 3! Dr. Karsten Tolle PRG2 SS
21 Windows unter Dienste "C:\Program Files\MariaDB 10.2\bin\mysqld.exe" "--defaults-file=c:\program Files\MariaDB 10.0\data\my.ini" "MySQL" Dr. Karsten Tolle PRG2 SS
22 Mitarbeiter Empno Vorname Nachname Gehalt 1 Ines Müller Fred Wagner Ingo Meyer Max Müller Jemand der die Vor- und Nachnamen der Mitarbeiter benötigt, würde z.b. die Select- Rechte an der Tabelle Mitarbeiter erhalten und so auch die Gehälter erfahren Dr. Karsten Tolle PRG2 SS
23 Mitarbeiter Empno Vorname Nachname Gehalt 1 Ines Müller Fred Wagner Ingo Meyer Max Müller Abteilung Depno Name Head 1 Finanzen 2 2 Einkauf 1 3 HR 1 Arbeitet_in CREATE VIEW Mitarbeiter_Dept AS select m.empno, m.nachname, d.name as Abt from Mitarbeiter m, Abteilung d, Arbeitet_in a where m.empno = a.empno and a.depno = d.depno; Mitarbeiter_Dept Mitarbeiter_Dept Empno Nachname Abt 1 Müller Einkauf 1 Müller HR 2 Wagner Finanzen 3 Meyer HR Empno Depno Dr. Karsten Tolle PRG2 4 SS 2018 Müller Einkauf 23
24 Absichern am Bsp. MySQL keine Standard Benutzer z.b. root mysql> RENAME USER root TO new_user; Netzwerkzugang nur erlauben, wenn nötig (sonst nur localhost) Firewall installieren show databases verbieten Siehe auch: Dr. Karsten Tolle PRG2 SS
25 Dr. Karsten Tolle PRG2 SS
26 Welche Benutzer gibt es eigentlich alles wo finde ich diese Informationen wo sind die Daten abgelegt: user, pw, wie sicher ist das? und was hat das mit einem Regenbogen zu tun? ( ) Dr. Karsten Tolle PRG2 SS
27 Salt und Pepper Passwörter werden durch zusätzliche Zeichenketten ergänzt: Salt jedes PW erhält eine eigene Zeichenkette, welche in der DB mit und offen hinterlegt ist. Pepper jedes PW wird mit der gleichen Zeichenkette ergänzt, diese Zeichenkette ist möglichst geheim. Dr. Karsten Tolle PRG2 SS
28 Mögliche Gefahren Zusätzliche Bedingungen einzufügen: Eingabe (Zahl): 1 or id > 1 or name like % select * from mytable where id = 1 or id > 1 or name like %?? Daten der Tabelle können ausgespäht werden. Dr. Karsten Tolle PRG2 SS
29 Mögliche Gefahren Zusätzliche Statements einzufügen: Eingabe (Zahl): 1; drop mytable; # select * from mytable where id = 1; drop mytable; #?? Direkter Schaden an der Datenbank, eventuell Ausfall der Applikation. Dr. Karsten Tolle PRG2 SS
30 Was möglich ist hängt ab von DBMS / Verbindungsart / Programmiersprache / Betriebssystem / Erlaubt es mehrere SQL-Statements gleichzeitig auszuführen? Welche Zeichen werden als Kommentare interpretiert? (z.b.: -- oder #) JDBC, ODBC,??? Java, Php, Perl, Dr. Karsten Tolle PRG2 SS
31 Vorgehen von Angreifern Vorbereitung/Informationsgewinnung: Suchmaschinen (Google) spezielle Suchmaschinen ( Identifizierung von Honeypots aktive Penetrationstests/Eindringversuche Dr. Karsten Tolle PRG2 SS
32 Gegenmaßnahmen Positivlisten Methode wurde eingegeben was man erwartet? Negativlisten Methode Ablehnung von Schlüsselwörtern Gegebene Funktion in PHP: mysql_real_escape_string() Sie Maskiert alle Zeichen mit denen man aus den Anführungszeichen ausbrechen kann. Kombination aller 3 ist die sicherste Variante. Anwendung diesbezüglich testen (und testen lassen!) Siehe auch (für PHP): Dr. Karsten Tolle PRG2 SS
33 Sicherheit Auf DBMS-Ebene Benutzer entsprechend anlegen Bereitstellung von Views Überwachung Auf Programmier-Ebene Wenig Infos nach Außen Mittel der verwendeten Prog. Sprache verwenden (z.b. PreparedStatement in Java oder Escape-Funktionen in PHP) Entsprechende Tests vorsehen Nicht erst am Ende an die Sicherheit denken
34 Literaturhinweise Advanced SQL Injection In SQL Server Applications von Chris Anley (more) Advanced SQL Injection in MySQL (deutsch) Irongeek - Adrian Crenshaw's Information Security site Mutillidae: a free, open source web application provided to allow security enthusiest to pen-test and hack a web application. Dr. Karsten Tolle PRG2 SS
35 vorrat (Teil Lager Menge Strasse Hausnr) Waag Krugerstr Waag. 10 F = { Teil Lager Menge Lageradresse Lager Lageradresse 112 } 4 10 Brunnerstr. 105 F = { Teil Lager Menge Strasse Hausnr Lager Strasse Hausnr } Dr. Karsten Tolle PRG2 SS
36 1 vorrat (Teil Lager Menge Strasse Hausnr) Waag Krugerstr Waag. 10 F = { Teil Lager Menge Strasse Hausnr Lager Strasse Hausnr } Brunnerstr. 105 Probleme: Redundanz Einfüge-Anomalie Lösch-Anomalie Lageradresse für jedes Teil im Lager redundant gespeichert Lager ohne Teile kann nicht eingefügt werden Lager ohne Teile würden gelöscht werden Dr. Karsten Tolle PRG2 SS
37 vorrat (Teil Lager Menge Strasse Hausnr) F = { Teil Lager Menge Strasse Hausnr Lager Strasse Hausnr } Waag Krugerstr Waag Brunnerstr. 105 Lösung: Zerlegung der Relation vorrat (Teil Lager Menge) Fremdschlüssel lager (Lager Strasse Hausnr) 1 Waag RMS 10 3 Krugerstr Brunnerstr. 105 Dr. Karsten Tolle PRG2 SS
38 Prim Ein Attribut A heißt prim in R, wenn es in einem der Schlüssel von R enthalten ist, sonst heiße es nicht prim. A ist prim X: X ist Schlüssel, A X Dr. Karsten Tolle PRG2 SS
39 volle funktionale Abhängigkeit Eine funktionale Abhängigkeit X Y heißt volle funktionale Abhängigkeit, wenn für keine Teilmenge X X, X Y gilt. Y heißt dann voll funktional abhängig von X. X Y voll funktional X X : X Y Dr. Karsten Tolle PRG2 SS
40 2. Normalform Ein Relationenschema R ist in 2. Normalform (2NF), wenn es in 1NF ist und jedes nicht prime Attribut voll funktional von jedem Schlüssel von R abhängig ist. 2. NF A nicht prim Schlüssel A voll funktional Die 2. NF ist verletzt, wenn ein Teil eines Schlüssels ein Nicht-Schlüsselattribut funktional bestimmt. Dr. Karsten Tolle PRG2 SS
41 vorrat (Teil Lager Menge Strasse Hausnr) Waag. 10 nicht 2. NF Krugerstr Waag Brunnerstr. 105 F = { Teil Lager Menge Strasse Hausnr Lager Strasse Hausnr } 2. NF vorrat (Teil Lager Menge) lager (Lager Strasse Hausnr) 1 Waag RMS 10 3 Krugerstr Brunnerstr. 105 Dr. Karsten Tolle PRG2 SS
42 Vorgehen beim Prüfen auf NF (WICHTIG!!!) Ausgangspunkt: Relation R (mind. 1. NF) und Menge der FDs gegeben. 1. Welche Schlüssel gibt es? was sind die nicht primen Attribute! 2. Prüfe auf 2. NF (voll funktional abhängig von ALLEN Schlüsseln?) Dr. Karsten Tolle PRG2 SS
43 Übung R = (A, B, C, D, E) a. FD = {A BD, CD AC, E D} b. FD = {A EBD, CD AC, E D} c. FD = {AC EBD, CD AC, E D} d. FD = {AC EBD, CD AC, E D, B AC} a. Schlüssel = {CE} b. Schlüssel = {AC, CD, CE} Dr. Karsten Tolle PRG2 SS
44 Fahrzeug Kennzeichen Zugel_Ges_Gew Führerschein KENNZEICHEN ZUGEL_GES_GEW FÜHRERSCHEIN F-AB B F-AB C1 F-AB C1 F-AB C F-AB C F-AB C 2. NF? F = { Kennzeichen R, ZUGEL_GES_GEW FÜHRERSCHEIN} Dr. Karsten Tolle PRG2 SS
45 Trotzdem Probleme! KENNZEICHEN ZUGEL_GES_GEW FÜHRERSCHEIN F-AB B F-AB C1 F-AB C1 F-AB C F-AB C F-AB C Ist in 2. NF aber nicht in 3. NF! Dr. Karsten Tolle PRG2 SS
46 Auswirkungen!? Attribute 1-n Entität_1 Mapping ER rel. Model Evt. Erweitert um Beziehungsattribute (0,1) oder (1,1) oder sogar Attribute anderer Entitäten (bei 1-to-1 Bez.). A1 A2 An Bi Ci Normalisierung Dr. Karsten Tolle PRG2 SS
47 Normalisierung / Denormalisierung Normalisierung: Der Prozess des Aufspaltens von Relationen, um Anomalien/Redundanzen zu verhindern. Denormalisierung: Der Prozess des Zusammenlegens von Relationen, um Performanz zu gewinnen. Dr. Karsten Tolle PRG2 SS
Daten Bank. 5. Vorlesung. Dr. Karsten Tolle PRG2 SS 2014
Daten Bank 5. Vorlesung Dr. Karsten Tolle PRG2 SS 2014 Klausur Bemerkungen: Man benötigt keine Übungspunkte um bei der Klausur teilnehmen zu dürfen! Die Online-Anmeldung auf der PRG2-Seite reicht nicht
MehrDaten Bank. 5. Vorlesung
Daten Bank 5. Vorlesung 4. VL von bis Person (0,n) lebt_in (0,n) Ort AusweisNr. Name Vorname PLZ Ortsname SQL: create insert select 1. Normalform Schlüssel und Funktionale Abhängigkeiten Dr. Karsten Tolle
MehrDaten Bank. 5. Vorlesung. Dr. Karsten Tolle PRG2 SS 2013
Daten Bank 5. Vorlesung Dr. Karsten Tolle PRG2 SS 2013 4. Vorlesung 1. Normalform Funktionale Abhängigkeiten und Schlüsselkandidaten Dr. Karsten Tolle PRG2 SS 2013 2 vorrat (Teil Lager Menge Lageradresse)
MehrDaten Bank. 5. Vorlesung. Dr. Karsten Tolle PRG2 SS 2012
Daten Bank 5. Vorlesung Dr. Karsten Tolle PRG2 SS 2012 4. Vorlesung SQL und SQL aus Programmen heraus (embedded und CLI) 1. Normalform Funktionale Abhängigkeiten und Schlüsselkandidaten Dr. Karsten Tolle
MehrDaten Bank. 4. Vorlesung
Daten Bank 4. Vorlesung Bisher von bis Person (0,n) lebt_in (0,n) Ort AusweisNr. Name Vorname PLZ Ortsname SQL: create insert select Dr. Karsten Tolle PRG2 SS 2015 2 Heute von bis Person (0,n) lebt_in
MehrRepetitorium: Wer: Tung Le Trong Wann: (Freitag) Genauer wann : von Uhr Wo: H IV. Dr. Karsten Tolle PRG2 SS
Repetitorium: Wer: Tung Le Trong Wann: 21.7.2017 (Freitag) Genauer wann : von 10-18 Uhr Wo: H IV Dr. Karsten Tolle PRG2 SS 2017 1 Klausuranmeldung bis 17. Juli Anmeldung online über QIS/LFS (Details unter:
MehrDaten Bank. 4. Vorlesung
Daten Bank 4. Vorlesung Nächste Woche 4. Juli Informationen zur Klausur-Anmeldung Evaluation DB-Teil der Vorlesung (Handy/Laptop mitbringen) Nils Dallmeyer beantwortet ab 10:45 Uhr noch einmal Fragen zur
MehrDaten Bank. 4. Vorlesung
Daten Bank 4. Vorlesung extensiblemarkup Language (XML) a simple example erste W3C Recommendation von 1998! tolle karsten
MehrTeil 2-6. Vorlesung. Modul: Programmierung B-PRG Grundlagen der Programmierung II
Teil 2-6. Vorlesung Modul: Programmierung B-PRG Grundlagen der Programmierung II Professur für Datenbanken und Informationssysteme Dr. Karsten Tolle tolle@dbis.cs.uni-frankfurt.de 1 Schlüssel? PLZ ORT
MehrDaten Bank. 4. Vorlesung. Dr. Karsten Tolle PRG2 SS 2014
Daten Bank 4. Vorlesung Dr. Karsten Tolle PRG2 SS 2014 Bisher von bis Person (0,n) (0,n) lebt_in Ort AusweisNr. Name Vorname PLZ Ortsname SQL: create insert select Dr. Karsten Tolle PRG2 SS 2014 2 Heute
MehrIsolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012
Isolationsstufen für Transaktionen / Sicherheit Dr. Karsten Tolle Dienstag 31. Januar 2012 Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch
MehrDaten Bank. 6. Vorlesung
Daten Bank 6. Vorlesung Repetitorium: Wer: Tung Le Trong Wann: 24.7.2018 (Dienstag) Genauer wann : von 10-18 Uhr Wo: H IV Dr. Karsten Tolle PRG2 SS 2018 2 Geonames select count(*) from geoname; 180554
MehrTeil 2-6. Vorlesung. Modul: Programmierung B-PRG Grundlagen der Programmierung II
Teil 2-6. Vorlesung Modul: Programmierung B-PRG Grundlagen der Programmierung II Professur für Datenbanken und Informationssysteme Dr. Karsten Tolle tolle@dbis.cs.uni-frankfurt.de 1 Schlüssel? PLZ ORT
MehrDaten Bank. 4. Vorlesung. Dr. Karsten Tolle PRG2 SS 2012
Daten Bank 4. Vorlesung Dr. Karsten Tolle PRG2 SS 2012 SQL -Anfragen join groupby groupby having select A 1,A 2,...,A n from R 1, R 2,...,R m [where conditions] [group by clause] [having clause] [order
MehrNormalformen. Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich. Keine Einfüge-, Lösch-, Änderungsanomalien
Normalformen Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich Keine Einfüge-, Lösch-, Änderungsanomalien IX-19 Erste und Zweite Normalform Beispiel: (nicht 1. Normalform) vorrat
MehrDaten Bank. 6. Vorlesung
Daten Bank 6. Vorlesung Prinzipien des digitalen Speicherns I Ein Datensatz sollte offensichtlich/eindeutig und schnell mit dem Objekt, welches es repräsentiert, in Verbindung gebracht werden können. ISBN
MehrDaten Bank. 4. Vorlesung. Dr. Karsten Tolle PRG2 SS 2012
Daten Bank 4. Vorlesung Dr. Karsten Tolle PRG2 SS 2012 Beispiel Datum Buch verliehen an (0,1) (0,n) Entleiher BuchNr Titel Autor Nummer Name BUCH (BuchNr, Titel, Autor) ENTLEIHER (Nummer, Name) VERLIEHEN_AN(BuchNr,
MehrTransaktionen in der Praxis. Dr. Karsten Tolle
Transaktionen in der Praxis Dr. Karsten Tolle Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch (Exception e) { e.printstacktrace(); } con.setautocommit(false);
MehrDaten Bank. 4. Vorlesung. Dr. Karsten Tolle PRG2 SS 2013
Daten Bank 4. Vorlesung Dr. Karsten Tolle PRG2 SS 2013 SQL -Anfragen groupby groupby having select A 1,A 2,...,A n from R 1, R 2,...,R m [where conditions] [group by clause] [having clause] [order by clause];
MehrGarten - Daten Bank. - survival pack -
Garten - Daten Bank - survival pack - Dr. Karsten Tolle PRG2 SS 2017 Inhalt heute Kurz: Motivation und Begriffe SQL (survival pack) create table (Tabelle erzeugen) insert into (Einfügen) select (Anfragen)
MehrDatenschutz: Zugriffsrechte in SQL
12. Datenschutz: Zugriffsrechte in SQL 12-1 12. Datenschutz: Zugriffsrechte in SQL 12-2 Inhalt Datenschutz: Zugriffsrechte in SQL 1. Anforderungen, Allgemeines 2. Die SQL-Befehle GRANT und REVOKE 3. Sichten
MehrPraktische SQL-Befehle
Praktische SQL-Befehle Datenbanksysteme I WiSe 2018/2019 Todor Ivanov DB1 WS2018 1 Praktische SQL-Befehle Nested Selects Inserts Updates Views Triggers Constraints Functions Voraussetzung: Laptop + MySQL/
Mehr12. Datenschutz: Zugriffsrechte in SQL Datenschutz: Zugriffsrechte in SQL
12. Datenschutz: Zugriffsrechte in SQL 12-1 Datenschutz: Zugriffsrechte in SQL 12. Datenschutz: Zugriffsrechte in SQL 12-2 Inhalt 1. Anforderungen, Allgemeines 2. Die SQL-Befehle GRANT und REVOKE 3. Sichten
MehrGarten -Daten Bank. -survivalpack - Dr. Karsten Tolle PRG2 SS 2016
Garten -Daten Bank -survivalpack - Dr. Karsten Tolle PRG2 SS 2016 Inhalt heute Kurz: Motivation und Begriffe SQL (survival pack) create table(tabelle erzeugen) insert into(einfügen) select (Anfragen) Struktur
MehrGarten -Daten Bank. Was ist das? Dr. Karsten Tolle PRG2 SS 2015
Garten -Daten Bank Was ist das? Dr. Karsten Tolle PRG2 SS 2015 Inhalt heute Kurz: Motivation und Begriffe SQL (survival package) create table(tabelle erzeugen) insert into(einfügen) select (Anfragen) Struktur
MehrDaten Bank. 3. Vorlesung
Daten Bank 3. Vorlesung Klausuranmeldung bis 10. Juli Anmeldung online über QIS/LFS (Details unter: http://go.uni-frankfurt.de) für Studierende der: Informatik, Bioinformatik, Physik Mathematik, Geographie
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 10 Übung zur Vorlesung Grundlagen: Datenbanken im WS16/17 Harald Lang, Linnea Passing (gdb@in.tum.de)
MehrAm Campus Bockenheim, im Sozialzentrum/Neue Mensa Foyer. zwischen 10 Uhr und 16 Uhr Der Eintritt ist kostenfrei.
Am Campus Bockenheim, im Sozialzentrum/Neue Mensa Foyer. zwischen 10 Uhr und 16 Uhr Der Eintritt ist kostenfrei. Garten - Daten Bank - survival pack - Dr. Karsten Tolle PRG2 SS 2018 Inhalt heute Kurz:
MehrFinalklausur zur Vorlesung Datenbanksysteme I Wintersemester 2003/2004 Prüfer: Prof. R. Bayer, Ph.D. Datum: Zeit: 16.
Finalklausur zur Vorlesung Datenbanksysteme I Wintersemester 2003/2004 Prüfer: Prof. R. Bayer, Ph.D. Datum: 13.02.2004 Zeit: 16. Uhr Hinweis: Die Bearbeitungszeit beträgt 90 Minuten. Bitte benutzen Sie
MehrGrundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich
Grundlagen von SQL Informatik 2, FS18 Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Markus Dahinden 13.05.18 1 Grundlagen von SQL (Structured Query Language)
Mehr5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp
5/14/18 Grundlagen von SQL (Structured Query Language) Datenbanksprache Befehle Datenbanken und Tabellen erstellen/verändern Daten manipulieren (eingeben, ändern, löschen) Datenbank durchsuchen (Queries
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrDatenbanken. Zusammenfassung. Datenbanksysteme
Zusammenfassung Datenbanksysteme Christian Moser Seite 1 vom 7 12.09.2002 Wichtige Begriffe Attribut Assoziation API Atomares Attribut Datenbasis DBMS Datenunabhängigkeit Datenbankmodell DDL DML DCL ER-Diagramm
MehrDatenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin
Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,
MehrGarten -Daten Bank. Was ist das? Dr. Karsten Tolle PRG2 SS 2014
Garten -Daten Bank Was ist das? Dr. Karsten Tolle PRG2 SS 2014 Inhalt heute Kurz: Motivation und Begriffe SQL (survival package) create table(tabelle erzeugen) insert into(einfügen) select (Anfragen) Struktur
MehrDaten Bank. 6. Vorlesung
Daten Bank 6. Vorlesung Klausur PRG-2 Klausur am Freitag den 25. Juli Start: 9:00 Uhr Wo: Hörsaalgebäude Bockenheim Vorlesungsräume HIV, HVI und HIII Studierendenausweis mitbringen! Dr. Karsten Tolle PRG2
MehrSQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99
SQL Früherer Name: SEQUEL SQL: Structured Query Language Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL ist eine deklarative Anfragesprache Teile von SQL Vier große Teile:
MehrInhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15
Vorwort..................................................... 13 Kapitel 1 Einleitung.......................................... 15 Kapitel 2 SQL der Standard relationaler Datenbanken... 19 2.1 Die Geschichte................................
MehrPHP- Umgang mit Datenbanken (1)
PHP- Umgang mit Datenbanken (1) Weitere Funktionen zum Umgang mit Datenbanken (Erzeugen, Löschen) und Tabellen (Erzeugen, Löschen) Zum Beispiel für das Erzeugen einer neuen Datenbank $dbname= blumendb
Mehr9. Sicherheitsaspekte
9. Sicherheitsaspekte Motivation Datenbanken enthalten häufig sensible Daten (z.b. personenbezogene oder unternehmenskritische) Vielzahl verschiedener Benutzer hat Zugriff (z.b. Anwendungen, Mitarbeiter,
MehrIn diesem Anschnitt geht es um die SQL Anweisungen, mit denen ich den Zugriff auf das Datenbankschema steuern kann.
In diesem Anschnitt geht es um die SQL Anweisungen, mit denen ich den Zugriff auf das Datenbankschema steuern kann. All diese Befehle werden unter dem Begriff SQL DLC Data Control Language zusammengefasst.
MehrÜberblick Felix Naumann. Zugriffsrechte Zugriffsrechte erzeugen Zugriffsrechte prüfen Zugriffsrechte vergeben Zugriffsrechte entziehen
Datenbanksysteme I Zugriffskontrolle (kleiner Einschub) 18.1.2007 Felix Naumann Überblick 2 Zugriffsrechte Zugriffsrechte erzeugen Zugriffsrechte prüfen Zugriffsrechte vergeben Zugriffsrechte entziehen
MehrInhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 15
Vorwort 13 Kapitel 1 Einleitung 15 Kapitel 2 SQL-der Standard relationaler Datenbanken... 19 2.1 Die Geschichte 19 2.2 Die Bestandteile 20 2.3 Die Verarbeitung einer SQL-Anweisung 22 2.4 Die Struktur von
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrTeil 2-7. Vorlesung. Modul: Programmierung B-PRG Grundlagen der Programmierung II
Teil 2-7. Vorlesung Modul: Programmierung B-PRG Grundlagen der Programmierung II Professur für Datenbanken und Informationssysteme Dr. Karsten Tolle tolle@dbis.cs.uni-frankfurt.de 1 Generalisierung ER
MehrDatenbanktechnologie mit praktischen Übungen in MySQL und PHP
Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Übung, Sommersemester 2013 29. April 2013 - MySQL 2 Sebastian Cuy sebastian.cuy@uni-koeln.de Aufgaben Anmerkungen Best practice: SQL Befehle
MehrDatenbanken 1. Sommersemester Übung 1
Datenbanken 1 Sommersemester 2017 Übung 1 Übersicht Entwurf Anforderungsanalyse -> Dokumentation der Anford. Konzeptuelles Modell -> ER-Diagramm Logisches Modell -> Relationales Datenmodell Physisches
MehrSQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans schmidt@cs.ro
MehrSicherheit von Webapplikationen Sichere Web-Anwendungen
Sicherheit von Webapplikationen Sichere Web-Anwendungen Daniel Szameitat Agenda 2 Web Technologien l HTTP(Hypertext Transfer Protocol): zustandsloses Protokoll über TCP auf Port 80 HTTPS Verschlüsselt
MehrOracle 10g Einführung
Kurs Oracle 10g Einführung Teil 5 Einführung Timo Meyer Administration von Oracle-Datenbanken Timo Meyer Sommersemester 2006 Seite 1 von 16 Seite 1 von 16 Agenda 1 Tabellen und Views erstellen 2 Indizes
MehrAuf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort... 13
Auf einen Blick Vorwort... 13 Teil 1 Vorbereitung Kapitel 1 Einleitung... 17 Kapitel 2 SQL der Standard relationaler Datenbanken... 21 Kapitel 3 Die Beispieldatenbanken... 39 Teil 2 Abfrage und Bearbeitung
MehrAuf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort 13
Auf einen Blick Vorwort 13 Teil 1 Vorbereitung Kapitel 1 Einleitung 17 Kapitel 2 SQL - der Standard relationaler Datenbanken 21 Kapitel 3 Die Beispieldatenbanken 39 Teil 2 Abfrage und Bearbeitung Kapitel
MehrDatenbanken (Übung 12)
Datenbanken (Übung 12) Prof. Dr.-Ing. Norbert Fuhr Dipl.-Inform. Thomas Beckers (tbeckers@is.inf.uni-due.de) Universität Duisburg-Essen Fachgebiet Informationssysteme 1. 2. Februar 2012 Dipl.-Inform. Thomas
MehrMultimedia im Netz Wintersemester 2013/14. Übung 02 (Hauptfach)
Multimedia im Netz Wintersemester 2013/14 Übung 02 (Hauptfach) Ludwig-Maximilians-Universität München Multimedia im Netz WS 2013/14 - Übung 2-1 PHP und MySQL Es werden mehrere APIs von PHP angeboten um
MehrEs geht also im die SQL Data Manipulation Language.
1 In diesem Abschnitt wollen wir uns mit den SQL Befehlen beschäftigen, mit denen wir Inhalte in Tabellen ( Zeilen) einfügen nach Tabelleninhalten suchen die Inhalte ändern und ggf. auch löschen können.
MehrInstallationsanleitung für die netzbasierte Variante Ab Version 3.6. KnoWau, Allgemeine Bedienhinweise Seite 1
1 Installationsanleitung für die netzbasierte Variante Ab Version 3.6 Copyright KnoWau Software 2014 KnoWau, Allgemeine Bedienhinweise Seite 1 2 Inhaltsverzeichnis 1 Übersicht... 3 2 Installation... 4
MehrErzeugung und Veränderung von Tabellen
Datenbanken - Objekte Erzeugung und Veränderung von Tabellen Objekt Tabelle View Sequence Index Synonym Basiseinheit zum Speichern; besteht aus Zeilen und Spalten; Logische Repräsentation; kann Teilmengen
MehrHacker-Methoden in der IT- Sicherheitsausbildung. Dr. Martin Mink
Hacker-Methoden in der IT- Sicherheitsausbildung Dr. Martin Mink Hacker-Angriffe 3.11.2010 Hacker-Methoden in der IT-Sicherheitsausbildung Dr. Martin Mink 2 Typische Angriffe auf Web- Anwendungen SQL Injection
MehrGrundlagen der Datenbanksysteme 2 (M-DB2) Dr. Karsten Tolle
Grundlagen der Datenbanksysteme 2 (M-DB2) Dr. Karsten Tolle Vorwissen und so SQL Umgang mit MySQL (Workbench) Beispieldaten zum Spielen: http://download.geonames.org/export/dump/ 2 Tuningpotential DB-Interna;
MehrTag 2 Inhaltsverzeichnis
Tag 2 Inhaltsverzeichnis Relationales Modell Relation und Schema Umsetzung ER-Modell --> relationales Schema DB Schema: Empfehlungen Typen von Abfragesprachen SQL Teil 1 Ziel und Geschichte Daten- und
MehrAnleitung: Verbindung mit der Datenbank
Anleitung: Verbindung mit der Datenbank Der Zugriff auf die MySQL-Datenbank selbst kann mit sämtlichen dafür erhältlichen Tools (Beispielsweise SquirrelSQL, Toad für MySQL, EMS SQL Manager, TOra oder ähnliches)
MehrIntroduction to Data and Knowledge Engineering. 6. Übung SQL
Introduction to Data and Knowledge Engineering 6. Übung SQL Aufgabe 6.1 Datenbank-Schema Buch PK FK Autor PK FK ISBN Titel Preis x ID Vorname Nachname x BuchAutor ISBN ID PK x x FK Buch.ISBN Autor.ID FB
MehrSQL - Datenbankdesign - Aufbau
SQL - Datenbankdesign - Aufbau Kompakt-Intensiv-Training Unsere fünftägige ANSI SQL Schulung vermittelt Ihnen alle nötigen Kenntnisse zur Erstellung von Datenauswertungen und Programmierung wiederkehrender
MehrKapitel 3: Datenbanksysteme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2008 Kapitel 3: Datenbanksysteme Vorlesung:
MehrDatenbanksysteme 2013
Datenbanksysteme 2013 Kapitel 8: Datenintegrität Vorlesung vom 14.05.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Datenintegrität Statische Bedingung (jeder Zustand) Dynamische
MehrEntwicklungsumgebung für die Laborübung
Entwicklungsumgebung für die Laborübung VL Datenbanksysteme Ingo Feinerer Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Gliederung
MehrDatenbanken im WI-Unterricht mit
Datenbanken im WI-Unterricht mit Inhaltsverzeichnis 1 ER-Modell - Entity Relationship Modell 1 1.1 Entitäten................................................. 2 1.2 Relationen................................................
MehrDatenbank - Teil 3. Ziele dieser Übung: Eine Datenbank anlegen mit SQL. Daten eingeben mit SQL. Abfragen stellen mit SQL und PHP
Datenbank - Teil 3 Ziele dieser Übung: Eine Datenbank anlegen mit SQL Daten eingeben mit SQL Abfragen stellen mit SQL und PHP 1 Datenbank - Teil 3 Datenbankserver Entwickelt von der schwedischen Aktiengesellschaft
MehrWebbasierte Informationssysteme
SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn - SS 2004 - Prof. Dr. Stefan Böttcher Folie 1 Was ist eine relationale Datenbank? Menge von Relationen (=Tabellen) und Constraints (=Integritätsbedingungen)
MehrChancen und Wachstumsfelder für PostgreSQL
Chancen und Wachstumsfelder für PostgreSQL Harald Armin Massa by Deutschsprachige PostgreSQL Konferenz 2013 Oberhausen Harald Armin Massa 2ndQuadrant Datenbanken seit 1984 Position Value Datenbank auf
MehrGrundlagen zu Datenbanken zu Beginn der Jgst. 13
Grundlagen zu Datenbanken zu Beginn der Jgst. 13 Bereits bei der Planung einer Datenbank muss der Datenbankentwickler darauf achten, Nachteile für das spätere System zu vermeiden. Die Strukturen müssen
MehrDatenbank und Tabelle mit SQL erstellen
Datenbank und Tabelle mit SQL erstellen 1) Übung stat Mit dem folgenden Befehlen legt man die Datenbank stat an und in dieser die Tabelle data1 : CREATE DATABASE stat; USE stat; CREATE TABLE data1 ( `id`
MehrÜbung Datenbanksysteme Updates, Integritätsbedingungen, funktionale Abhängigkeiten
Übung Datenbanksysteme Updates, Integritätsbedingungen, funktionale Abhängigkeiten 12.1.2004 Änderungsoperationen bei SQL (Daten) Einfügen neuer Tupel (schon bekannt) INSERT INTO Table (Spalte1, Spalte2)
Mehr105.3 SQL-Datenverwaltung
LPI-Zertifizierung 105.3 SQL-Datenverwaltung Copyright ( ) 2009 by Dr. W. Kicherer. This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 2.0 Germany License. To view a
MehrPostgreSQL unter Debian Linux
Einführung für PostgreSQL 7.4 unter Debian Linux (Stand 30.04.2008) von Moczon T. und Schönfeld A. Inhalt 1. Installation... 2 2. Anmelden als Benutzer postgres... 2 2.1 Anlegen eines neuen Benutzers...
MehrWeb Application Security: SQL-injection, Cross Site Scripting -- w3af
Web Application Security: SQL-injection, Cross Site Scripting -- w3af 1 Web 2.0 Application und Angriffspunkte Grundlagen: SQL SQL-injection Cross Site Scripting Web Application Scans mit w3af 2 Eine Web
MehrDieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.
Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,
MehrÜbersicht der wichtigsten MySQL-Befehle
Übersicht der wichtigsten MySQL-Befehle 1. Arbeiten mit Datenbanken 1.1 Datenbank anlegen Eine Datenbank kann man wie folgt erstellen. CREATE DATABASE db_namen; 1.2 Existierende Datenbanken anzeigen Mit
MehrTag 4 Inhaltsverzeichnis
Tag 4 Inhaltsverzeichnis Normalformen Problem Formen (1-4) Weitere Formen Transaktionen Synchronisationsprobleme Überblick Autocommit Locking Savepoints Isolation levels Übungen RDB 4-1 Normalformen Problematik
MehrSeminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.
Seminar 2 SQL - DML(Data Manipulation Language) und DDL(Data Definition Language) Befehle. DML Befehle Aggregatfunktionen - werden auf eine Menge von Tupeln angewendet - Verdichtung einzelner Tupeln yu
MehrRolf Däßler. Das Einsteigersem. MySQL 5
Rolf Däßler Das Einsteigersem MySQL 5 Inhaltsverzeichnis Vorwort 11 Einleitung 13 Was ist MySQL? 13 Eigenschaften 13 Leistungsmerkmale 15 Inhalt und Aufbau des Buches 17 Verwendete Programmversionen 18
MehrDatenbanken Entity-Relationship-Modell und Datenbankentwurf 1. Andreas Heß Hochschule Furtwangen
Datenbanken Entity-Relationship-Modell und Datenbankentwurf 1 Andreas Heß Hochschule Furtwangen Inhalte heute Einführung ins Entity-Relationship-Modell Einführung ins relationale Modell Umsetzung vom E/R-
MehrDatenbanken erstellen Liste von Datenbanken anzeigen Datenbanken löschen. MySQL 4, 5. Kapitel 06: Datenbanken. Marcel Noe
MySQL 4, 5 Kapitel 06: Datenbanken Gliederung 1 Datenbanken erstellen 2 3 Datenbanken erstellen CREATE DATABASE erstellt. Optional kann der Parameter IF NOT EXISTS die Datenbank bereits existiert.
MehrMultimedia im Netz Wintersemester 2013/14. Übung 03 (Nebenfach)
Multimedia im Netz Wintersemester 2013/14 Übung 03 (Nebenfach) Ludwig-Maximilians-Universität München Multimedia im Netz WS 2013/14 - Übung 3-1 Datenbanken und SQL Mit Hilfe von Datenbanken kann man Daten
MehrDieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.
Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,
MehrPHP und MySQL. Integration von MySQL in PHP. Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424. Michael Kluge (michael.kluge@tu-dresden.
Zentrum für Informationsdienste und Hochleistungsrechnen (ZIH) PHP und MySQL Integration von MySQL in PHP Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424 (michael.kluge@tu-dresden.de) MySQL
MehrSQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar
Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-
MehrMetadaten oder Metainformationen sind Daten, die Informationen über Merkmale anderer Daten enthalten, aber nicht diese Daten selbst (Wikipedia)
Metadaten oder Metainformationen sind Daten, die Informationen über Merkmale anderer Daten enthalten, aber nicht diese Daten selbst (Wikipedia) Dr. Christian Senger Metadaten 1 Vorgehen bei ER Modellierung
MehrDisclaimer. 1 Allgemeine Grundlagen (8 Punkte) (3 Punkte) (3 Punkte) (2 Punkte)... 2
Disclaimer Dieser Braindump ist nach bestem Wissen und Gewissen erstellt, dennoch kann für Richtigkeit nicht garantiert werden. Siehe auch den zugehörigen Thread im FSI-Forum. Alle Aufgaben sind selbstverständlich
MehrVorlesung Datenbanksysteme Endklausur
Dr. Stefan Brass 13. Februar 2001 Institut für Informatik Universität Giessen Vorlesung Datenbanksysteme Endklausur Name: Geburtsdatum: Geburtsort: (Diese Daten werden zur Ausstellung des Leistungsnachweises
MehrRelationales Datenbanksystem Oracle
Relationales Datenbanksystem Oracle 1 Relationales Modell Im relationalen Modell wird ein relationales Datenbankschema wie folgt beschrieben: RS = R 1 X 1 SC 1... R n X n SC n SC a a : i=1...n X i B Information
MehrMicrosoft Access 2010 SQL nutzen
Microsoft Access 2010 SQL nutzen Welche Bestellungen hat Kunde x aufgegeben? Welche Kunden haben noch nie bestellt? Wer hat welche Bestellungen von welchen Kunden aufgenommen? S(tructured)Q(uery)L(anguage)
MehrLinux-Camp: Linux als Server am Beispiel LAMP
Linux-Camp: Linux als Server am Beispiel LAMP Linux, Apache, MySQL, PHP mit Ubuntu Version 8.04 Inhalt LAMP-Komponenten LAMP-Komponenten installieren, konfigurieren und prüfen Apache Webserver PHP5 MySQL
MehrMySQL 101 Wie man einen MySQL-Server am besten absichert
MySQL 101 Wie man einen MySQL-Server am besten absichert Simon Bailey simon.bailey@uibk.ac.at Version 1.1 23. Februar 2003 Change History 21. Jänner 2003: Version 1.0 23. Februar 2002: Version 1.1 Diverse
MehrMySQL, phpmyadmin & SQL. Kurzübersicht
MySQL, phpmyadmin & SQL Kurzübersicht Referenzen MySQL Documentation: http://dev.mysql.com/doc PHP 5 / MySQL5. Studienausgabe. Praxisbuch und Referenz (Kannengießer & Kannengießer) 2 Datenbank anlegen
MehrÜbung PL/SQL Trigger Lösungen
Übung PL/SQL Trigger Lösungen 1) Gebe das aktuelle Datum aus. Wofür steht dual? Ändere das Datum für Deine aktuelle Session auf das Format Jahr (4 Stellen) Monat (2 Stellen) Tag (2 Stellen)[Leerzeichen]Stunde
Mehrkonzeptionelles DB-Design
konzeptionelles DB-Design was ist das? Systemunabhängige Darstellung des Datenmodells Was ist bei allen möglichen Datenbanksystemen gleich --> Systemtheorie Informationen über Objekte (Dinge) mit Attributen
Mehr