Informationssysteme / Datenbankabfragen

Größe: px
Ab Seite anzeigen:

Download "Informationssysteme / Datenbankabfragen"

Transkript

1 Informationssysteme / Datenbankabfragen Thomas Mohr Agenda Datenbanken Wozu? Abfragesprachesprache SQL Verwaltung MySQL Datenbankmodellierung Themenvernetzung (DB-Zugriff, etc.) Ausblick 2

2 Informationssysteme 3 Was ist ein Informationssystem? Ein Informationssystem kann auf formalisierte Fragen eines Anwenders Antworten aus einer gegebenen Datenmenge geben Komponenten eines Informationssystems: Erfassung Speicherung Analyse Darstellung Informationssystem Datenbanksystem DBS Datenbankmanagementsystem DBMS, z.b. MySQL Datenbank (Datenbasis) Datenbank (Datenbasis) 4

3 Ein Ausgangspunkt im Unterricht Schüler führen eine Internet-Recherche durch: Städte in Deutschland Einwohner, geografische Lage Schüler nutzen ein Informationssystem Schüler stellen automatisch Informationen unterschiedlich dar Mainz Nord 8 16 Ost Landau ,19 8,12 Listen Name Mainz Landau Tabellen Einwohner Breite Länge Tabellen bieten schon von Hand Vorteile: leichter zu ergänzen (neue Spalte) Summenzeile Motivation - Datenbank Idee: Sammlung der gefundenen Städte in einem Tabellenblatt (OpenOffice Calc / MS Excel) auf einem zentralen Laufwerk Es treten typische Probleme auf: Es kann immer nur ein Benutzer die Datei öffnen. Daten können von jedem geändert / gelöscht werden. Keinerlei Konsistenzprüfung der eingegebenen Daten. Abhilfe: Nutzung eines Datenbanksystems MS Access ist in dieser Hinsicht schon ungeeignet. 7

4 Software-Architekturen: Standalone -Programm z.b. selbst programmierte Schülerdatei in Delphi programmierte Übersicht von Länderinformationen Anwendungsprogramm PC 8 Software-Architekturen: Standalone -Programm Vorteile Übersichtlichkeit (?) Schnell zu programmieren nur eine Programmiersprache Anwendungsprogramm Nachteile Daten meist nur vom erzeugenden Programm zu lesen Erweiterungen aufwändig Immer wieder gleiche Probleme (z.b. Datumsformat) PC 9

5 Software-Architekturen - Client-Server z.b. Outlook und Exchange-Server einfache, datenbank-basierte Schülerverwaltung Anwendungsprogramm Anwendungsprogramm (Datenbank)Server Client Server 10 Software-Architekturen - Client-Server z.b. Outlook und Exchange-Server einfache, datenbank-basierte Schülerverwaltung Anwendungsprogramm (Datenbank)Server Client Server 11

6 Software-Architekturen - Client-Server Vorteile Datenbank übernimmt Standardaufgaben Daten zentral vorhanden (für mehrere Benutzer / Programme) Erweiterungen relativ einfach Anwendungsprogramm (Datenbank)Server Nachteile Installation von Software auf allen Clients notwendig Weitere Sprache zum Datenbankzugriff Client Server 12 Software-Architekturen Webarchitektur Eine moderne 3-schichtige Webarchitektur Webclient (Browser) Anwendungsprogramm Webserver (z.b. Apache und PHP) Datenbankserver (z.b. MySQL) Client Server Server 13

7 Software-Architekturen Webarchitektur Eine moderne 3-schichtige Webarchitektur Webclient (Browser) Webserver (z.b. Apache und PHP) Datenbankserver (z.b. MySQL) Client Server Server 14 Software-Architekturen Webarchitektur Vorteile Keine Installation von zusätzlicher Software beim Client Webclient (Browser) Webserver (z.b. Apache und PHP) Datenbankserver (z.b. MySQL) Nachteile http-protokoll ohne Sessionverwaltung Client Server Server 15

8 Typische Hardware-Verteilung Viele (Web-) Clients teilen sich die Dienste eines Webservers, der wiederum auf einen Datenbankserver zurückgreift. In kleinen Systemen können Web- und Datenbankserver auf dem gleichen Rechner sein. Clients Webserver Datenbankserver 16 und zum Testen / für die Fortbildung? Alle drei Schichten sind auf einem Rechner! Clients Client Webserver Datenbankserver Webserver Internet Explorer Apache Datenbankserver MySQL 17

9 Das andere Extrem eine Web Farm Application Server Farm je 4 Prozessoren HACMP Fail-Over Production DB Server FailOver DB Server 32 GByte RAM 32 GByte RAM Load Balancer FDDI Switch 18 2,4 TByte Arten von Datenbanken Man unterscheidet verschiedene Arten von Datenbanken: Hierarchische Datenbanken Die Datenelemente sind baumartig miteinander verbunden Vernetzte Datenbanken Die Datenelemente sind mit Zeigern zu einem Netz miteinander verbunden 19 Beide Formen waren vor allem bei Großrechnern im Einsatz und werden zunehmend von relationalen Datenbanken abgelöst

10 Arten von Datenbanken Relationale Datenbanken Die Daten werden in Form von Tabellen gespeichert Zwischen den Tabellen werden Beziehungen aufgebaut (Relationen) Ort Datensatz (Tupel) Spalte (Merkmal, Attribut) Datenwert (Attributwert) Name Einwohner Breite Laenge Land Berlin ,52 13,41 Deutschland Mainz ,00 8,27 Deutschland Paris ,86 2,35 Frankreich Speyer ,31 8,43 Deutschland Attributklasse 20 Empfehlung: Einheitliche Begriffe nutzen, nicht zu nah an der mathematischen Betrachtung (Relationenalgebra) Arten von Datenbanken Relationale Datenbanken typische Vertreter Oracle IBM (DB/2) Microsoft SQL Server (Access?) Informix MySQL OpenSource PostGreSQL 21

11 Was bietet mir eine Datenbank? Strukturierte Speicherung von Daten Verteilter, gleichzeitiger Zugriff mehrerer Benutzer / Programme Verwaltung von Zugriffsrechten ACID Prinzip (Idee: Analogie zu Bank-Transaktionen) Atomicity Transaktionen (Änderungen an der Datenbank) werden ganz oder gar nicht durchgeführt. Consistency Eine Transaktion führt wieder zu einem konsistenten (gültigen) Zustand der Datenbank. Isolation Transaktionen beeinflussen sich nicht gegenseitig. Durability Eine Transaktion ist dauerhaft gespeichert, auch gegen Systemabstürze gesichert. 22 Im Unterricht gut durch Rollenspiele zu veranschaulichen. ACID-Prinzip A Atomicity Bsp.: Ein Kontosystem mit nicht überziehbaren Konten Bob überweist Alice 500. Die Transaktion bricht nach der Abbuchung von Bobs Konto ab. Bob Alice Die Transaktion darf nur ganz oder gar nicht stattfinden. Konkret: Das Geld darf unterwegs nicht verschwinden 23

12 ACID-Prinzip C Consistency Bsp.: Bob will Alice 1000 überweisen. Die Transaktion überzieht sein Konto, was nicht erlaubt ist. Bob Alice Jede Transaktion muss die Datenbank in einem konsistenten (den definierten Regeln entsprechenden) Zustand hinterlassen. (insbesondere bei der Konsistenz von Schlüsselbeziehungen, s.u.) ACID-Prinzip I Isolation Bsp.: Bob überweist Alice 400 und gleichzeitig an Carol 500. Jede Transaktion für sich ist in Ordnung, zusammen überziehen sie das Konto. Carol Bob Alice Jede Transaktion muss so ablaufen, dass parallel ablaufende Transaktionen sie nicht stören können. (zumindest logisch nacheinander ablaufen serialisierbar)

13 Agenda Datenbanken Wozu? Abfragesprachesprache SQL Verwaltung MySQL Datenbankmodellierung Themenvernetzung (DB-Zugriff, etc.) Ausblick 26 Sprachen zur Datenbankverwaltung An der Schnittstelle nach außen bietet das Datenbanksystem (DBS) Sprachen für folgende Zwecke: Datenabfrage und -manipulation (DML) Verwaltung der Datenbank und Definition der Datenstrukturen (DDL) Berechtigungssteuerung (DCL) Bei relationalen DBS ist dies alles in der Sprache SQL vereint. Beschränkung in der Schule im Wesentlichen auf Abfragesprache. GF - Lehrplan 27

14 MySQL Jetzt wird es (endlich) praktisch Starten Sie den Datenbankserver und den Webserver Das Datenbanksystem bietet einen Service für andere Rechner an Die Windows-Firewall kann dies melden. Der Port muss freigegeben werden. 28 Die erste Datenbank importieren Die Administration von MySQL funktioniert selbst schon am einfachsten über den Browser (oder Admin-Button in Control Panel) Webarchitektur Client Webserver Browser Apache MySQL 29 Datenbankserver

15 Die erste Datenbank importieren Legen Sie eine neue Datenbank terra1 an. Wechseln Sie zur Datenbank (links), wählen Sie den Punkt Importieren und suchen die Datei terra1.sql 30 Die erste Tabelle Klicken Sie auf Struktur : u.a. wird die Tabelle ort angezeigt. Lassen Sie sich den Inhalt der Tabelle anzeigen. Tipp: Ändern Sie die Einstellungen von phpmyadmin, so dass nur die Icons angezeigt werden! 31

16 Abfragen mit SQL SQL = Structured Query Language. bezeichnet eine Sprache zur Kommunikation mit Datenbanken. ist international genormt und wird von vielen DBS verstanden. wird im Folgenden zur Formulierung von Abfragen eingesetzt. Syntax einer (einfachen) SQL-Abfrage: SELECT [Spalten] FROM [Tabelle] WHERE [Bedingung] ORDER BY [Attribute]; Die WHERE- und die ORDER BY-Klausel sind optional. 32 Datenbankzugriff mit SQL - Ein erstes Beispiel SELECT Name, Einwohner, Land FROM Ort WHERE Einwohner > Ort Name Einwohner Breite Laenge Land Berlin ,52 13,41 Deutschland Mainz ,00 8,27 Deutschland Paris ,86 2,35 Frankreich Speyer ,31 8,43 Deutschland Ergebnistabelle Name Einwohner Land Berlin Deutschland Paris Frankreich Millionenstädte? 35

17 SQL WHERE Bedingungen mit Textattributen: Name = 'Paris' Name LIKE 'P%' Name LIKE 'A_len' (Potsdam, Peine, Pirmasens) (Aalen, Ahlen) Bedingungen mit Zahlattributen: Stufe=7 (gleich 7) Stufe<>7 (ungleich 7) Stufe<7 (kleiner 7) Stufe>7 (größer 7) Stufe<=7 (kleiner gleich 7) Stufe>=7 (größer gleich 7) Stufe BETWEEN 7 AND 10 (zwischen 7 und 10) 36 SQL WHERE Vergleich auf Nullwert (kein Attributwert angegeben): Breite IS NULL Logische Verknüpfungen: NOT (Land='Deutschland') (Land nicht Deutschland) (Land='Deutschland') AND (Einwohner>100000) (Millionenstädte in Deutschland) (Land='Deutschland') OR (Land='Schweiz') (Orte in Deutschland und Schweiz) 37

18 SQL ORDER BY Das Abfrageergebnis kann sortiert werden: SELECT [Spalten] FROM [Tabelle] WHERE [Bedingung] ORDER BY [Attribute]; Die Sortierung geschieht nach dem angegebenen Attribut. Bei mehreren Sortierattributen wird nach dem zweiten (dritten...) sortiert, sobald die Werte des ersten (zweiten...) identisch sind. Absteigende Sortierung mit DESC Beispiele: SELECT * FROM Ort ORDER BY Name SELECT * FROM Ort ORDER BY Land, Einwohner DESC 38 Die ersten SQL Befehle Öffnen Sie das SQL-Fenster 1. Geben Sie alle Länder aus! SELECT * FROM Land 2. Geben Sie alle Länder aus: Name, Einwohner, Hauptstadt Sortierung nach Einwohner absteigend SELECT Name, Einwohner, Hauptstadt FROM Land ORDER BY Einwohner DESC 39

19 Aufgaben, Datenbank: terra1 3. Welche Länder liegen in Asien und Australien? WHERE Kontinent='Asien' OR Kontinent='Australien' 4. Welche Länder haben zwischen 10 und 100 Mio. Einwohner? Absteigend nach Einwohner sortiert WHERE Einwohner BETWEEN 10 AND 100 ORDER BY Einwohner DESC 5. Welche Länder haben einen Arm oder ein Bein im Namen? WHERE name like '%bein%' OR name like '%arm%' 40 Hilfsfunktionen Wichtig sind vor allem Funktionen zur Manipulation von Strings und Datumsangaben, z.b. DATEDIFF(D1, D2) Differenz (Tage) NOW() Aktuelle Zeit/Datum (SELECT CURDATE()) Wichtige Stringfunktionen CONCAT(S1,S2, ) Verbinden von Strings LOWER(),UPPER() In Groß-/Kleinbuchstaben umwandeln CHAR_LENGTH() Länge in Zeichen MID(str,pos,len) String ausschneiden TRIM(s), LTRIM, RTRIM Abschneiden von Leerzeichen Weitere Funktionen online in der Hilfe zu MySQL! 41 SQL ist hier nicht standardisiert Die Funktionen sind bei anderen DBS oft unterschiedlich

20 Aufgaben, Datenbank: terra1 5. Geben Sie die Länder in folgender Form aus: CONCAT(UPPER(Name),' - ',Hauptstadt) AS Land, round(einwohner) AS "Mio. Einwohner" Spalten können mit AS umbenannt werden 6. Welche Länder gibt es in Europa mit mehr als 20 Mio Einwohner? WHERE Kontinent = 'Europa' AND Einwohner > 20 Frankreich?? Problem: Europa wird unterschiedlich geschrieben! Lösung: Auslagerung in eine eigene Tabelle 42 Exkurs: Primärschlüssel Wozu dient die Spalte LNR in der Land-Tabelle? ein anderes Beispiel: Suche nach der Hauptstadt Berlin Suche nach der Hauptstadt Washington Man benötigt noch das Land als Suchhilfe. 43 Selbst das Land reicht als Suchhilfe nicht aus.

21 Relationale Datenbanken Beziehungen 45 Land und Kontinent werden in zwei getrennten Tabellen gespeichert und über eine Beziehung miteinander verknüpft. Zur Verknüpfung dient ein Kürzel des Kontinents, das als Fremdschlüssel in Land gespeichert wird. Land LNR Name Einwohner Hauptstadt Kontinent DK Dänemark 5.16 Kopenhagen Europa D Deutschland Berlin Europa IND Indien Delhi Asien RWA Rwanda 6.30 Kigali Afrika LNR Name KNR DK Dänemark EU D Deutschland EU IND Indien AS RWA Rwanda AF Schlüsselattribut aus Kontinent Kontinent KNR EU AS AF Name Europa Asien Afrika Relationale Datenbanken Beziehungen 46 Land LNR Name KNR DK Dänemark EU D Deutschland EU IND Indien AS RWA Rwanda AF Primärschlüssel aus Kontinent Kontinent KNR Name Die Verknüpfung erfolgt grundsätzlich dadurch, dass ein Fremdschlüssel der einen Tabelle auf den zugehörigen Primärschlüssel der anderen Tabelle zeigt. Vorteile: Daten werden jeweils nur in einer Tabelle gespeichert. Datenänderungen sind leichter durchzuführen. Strukturänderungen (z.b. das Hinzufügen der Kontinentfläche) lassen sich meist mit geringem Aufwand realisieren. Die Struktur lässt flexiblere Abfragen zu. EU AS AF Europa Asien Afrika

22 SQL einfache Joins Müssen in SQL Daten aus mehreren Tabellen entnommen werden, so werden sog. Joins gebildet. Die Abarbeitung eines Joins in mehreren Schritten kann an folgendem Beispiel veranschaulicht werden: Land Es sollen alle Länder mit ihren Kontinenten ausgegeben werden, die mehr als 10 Mio. Einwohner haben. LNR Name Einwohner KNR DK Dänemark 5.16 EU D Deutschland EU IND Indien AS RWA Rwanda 6.30 AF Kontinent KNR EU AS AF Name Europa Asien Afrika 47 SQL einfache Joins 48 Land 1. Cross-Join ( jede Zeile mit jeder ) SELECT * FROM Land, Kontinent LNR Name Einwohner KNR DK Dänemark 5.16 EU D Deutschland EU IND Indien AS RWA Rwanda 6.30 AF KNR EU AS AF LNR Name Einwohner KNR KNR Name DK Dänemark 5.16 EU EU Europa DK Dänemark 5.16 EU AS Asien DK Dänemark 5.16 EU AF Afrika D Deutschland EU EU Europa D Deutschland EU AS Asien D Deutschland EU AF Afrika IND Indien AS EU Europa IND Indien AS AS Asien IND Indien AS AF Afrika Name Europa Asien Afrika Kontinent

23 SQL einfache Joins Einschränken auf passende Datensätze. Es dürfen nur die Zeilen genommen werden, für die die Land und die Kontinent Tabelle Daten des gleichen Kontinents enthalten. Dies wird durch die sog. Join-Bedingung erreicht. SELECT * FROM Land, Kontinent WHERE Land.KNR= Kontinent.KNR LNR Name Einwohner KNR KNR Name DK Dänemark 5.16 EU EU Europa DK Dänemark 5.16 EU AS Asien DK Dänemark 5.16 EU AF Afrika D Deutschland EU EU Europa D Deutschland EU AS Asien D Deutschland EU AF Afrika IND Indien AS EU Europa IND Indien AS AS Asien IND Indien AS AF Afrika SQL einfache Joins Einschränken auf passende Datensätze (2). Es sollen nur Länder mit > 10 Mio. Einwohner gezeigt werden. Momentan würde auch Dänemark ausgegeben werden. Also muss eine weitere Bedingung erfüllt sein: SELECT * FROM Land, Kontinent WHERE Land.KNR = Kontinent.KNR AND Land.Einwohner > 10 LNR Name Einwohner KNR KNR Name DK Dänemark 5.16 EU EU Europa DK Dänemark 5.16 EU AS Asien DK Dänemark 5.16 EU AF Afrika D Deutschland EU EU Europa D Deutschland EU AS Asien D Deutschland EU AF Afrika IND Indien AS EU Europa IND Indien AS AS Asien IND Indien AS AF Afrika

24 SQL einfache Joins Einschränken auf gesuchte Spalten. Nur bestimmte Spalten werden ausgegeben. SELECT Land.Name, Land.Einwohner, Kontinent.Name FROM Land,Kontinent WHERE Land.KNR = Kontinent.KNR AND Land.Einwohner > 10 LNR Name Einwohner KNR KNR Name D Deutschland EU EU Europa IND Indien AS AS Asien Name Einwohner Name Deutschland Europa Indien Asien In der Realität versucht das DBMS, durch geschicktes Vorgehen die Datenmenge schon früher zu reduzieren. Aufgaben, Datenbank: terra2 1. Geben Sie alle Kontinente mit ihren Ländern aus: Name der Kontinente und Länder Sortierung nach Kontinent absteigend 2. In welchen Kontinenten gibt es Länder mit mehr als 100 Mio. Einwohner? SELECT DISTINCT Kontinent.Name Kontinent.Name FROM Land, Kontinent WHERE Land.KNR = Kontinent.KNR AND Land.Einwohner > 100 Problem: Es werden Duplikate angezeigt SELECT Kontinent.Name, Land.Name FROM Kontinent, Land WHERE Kontinent.KNR = Land.KNR ORDER BY Kontinent.Name DESC 52 Lösung: DISTINCT-Anweisung

25 Erweiterung der Datenbank Es sollen nun die wichtigsten Orte der Länder gespeichert werden. Wie sieht eine solche Ländertabelle aus? Es wird eine neue Tabelle Ort angelegt mit einem Fremdschlüssel auf Land. Ort ONR Name LNR BANGAL Bangalore IND GOETTI Göttingen D KARLSR Karlsruhe D KOPENH Kopenhagen DK Land LNR Name KNR DK Dänemark EU D Deutschland EU IND Indien AS RWA Rwanda AF Schlüsselattribut aus Land 53 Bisheriges Schema der Datenbank 54 Ein erstes E/R-Modell (Entity/Relationship) eigentlich intuitiv zu lesen!? Teil von Land Hauptstadt Teil von Kontinent Ort Finden Sie die Stelle in der Datenbank terra3, an der die Hauptstadt abgespeichert ist?

26 Aufgaben, Datenbank: terra3 1. Geben Sie alle Orte mit ihren Ländern aus: Name der Orte und Länder Sortierung nach Einwohnerzahl absteigend SELECT Ort.Name, Ort.Einwohner, Land.Name AS Land FROM Ort, Land WHERE Ort.LNR = Land.LNR ORDER BY Ort.Einwohner DESC 2. Geben Sie alle Länder mit ihrer Hauptstadt aus! Sortierung nach Kontinent und Land. SELECT Kontinent.Name AS Kontinent, Land.Name, Ort.Name AS Hauptstadt FROM Ort, Land, Kontinent WHERE Ort.ONR = Land.HauptONR AND Land.KNR = Kontinent.KNR ORDER BY Kontinent.Name, Land.Name 55 SQL Tabellen-Alias Soll in SQL auf eine Tabelle mehrfach zugegriffen werden, so kann dies mit Alias-Namen geschehen: Es sollen alle Städte mit mehr als 1 Mio. Einwohner ausgegeben werden; dabei auch das zugehörige Land mit Hauptstadt. logische Struktur: Ort Teil von Land SELECT o.name AS Stadt, l.name AS Land, hs.name FROM Ort o, Land l, Ort hs WHERE o.lnr = l.lnr AND l.hauptonr = hs.onr AND o.einwohner> Hauptstadt Ort Der Alias-Name für Land ist nicht notwendig (verkürzt die Abfrage) 56

27 Erweiterung der Datenbank Es sollen Flüsse gespeichert werden. Flüsse fließen durch Orte. Manche Orte werden von mehreren Flüssen durchflossen (z.b. Koblenz) Wie sieht die Tabelle für die Flüsse aus? Fluss FNR Name Laenge ELB Elbe 1144 MEK Mekong 4500 MOS Mosel 544 RHE Rhein 1320 ONR HAMBUR PHNOMP KOBLEN KOBLEN Ort ONR Name GOETTI Göttingen KARLSR Karlsruhe KOBLEN Koblenz KOPENH Kopenhagen Problem: Für Flüsse müssen beliebig viele Orte eingetragen werden. 57 Erweiterung der Datenbank Es sollen Flüsse gespeichert werden. Flüsse fließen durch Orte. Manche Orte werden von mehreren Flüssen durchflossen (z.b. Koblenz) Wie sieht die Tabelle für die Flüsse aus? Fluss FNR Name Laenge ELB Elbe 1144 MEK Mekong 4500 MOS Mosel 544 RHE Rhein 1320 Ort ONR Name GOETTI Göttingen KARLSR Karlsruhe KOBLEN Koblenz KOPENH Kopenhagen FNR LEI RHE RHE Problem: Für Orte müssen mehrere Flüsse eingetragen werden. 58 Lösung: Auslagerung der Zuordnung in eine eigene Tabelle

28 Erweiterung der Datenbank 59 Es sollen Flüsse gespeichert werden. Flüsse fließen durch Orte. Manche Orte werden von mehreren Flüssen durchflossen (z.b. Koblenz) Zuordnungstabelle mit Schlüsseln aus beiden Haupttabellen. Fluss FNR Name Laenge ELB Elbe 1144 MEK Mekong 4500 MOS Mosel 544 RHE Rhein 1320 Stadtfluss FNR ONR ELB HAMBUR RHE KOBLEN RHE KARLSR MOS KOBLEN Ort ONR Name GOETTI Göttingen KARLSR Karlsruhe KOBLEN Koblenz KOPENH Kopenhagen Struktur der Datenbank terra4 Land n Teil von 1 Kontinent 1 n Teil von Ort Hauptstadt 1 1 n durchfließt m Fluss 60

29 Aufgaben, Datenbank: terra Welche Orte liegen an der Donau? 2. Welche Länder durchfließt die Donau? 3. Welche Flüsse fließen durch Deutschland? SELECT o.name FROM Ort o, Stadtfluss sf, Fluss f WHERE o.onr = sf.onr AND sf.fnr = f.fnr AND f.name = 'Donau' SELECT DISTINCT l.name FROM Land l, Ort o, Stadtfluss sf, Fluss f WHERE l.lnr = o.lnr AND o.onr = sf.onr AND sf.fnr = f.fnr AND f.name = 'Donau' SELECT DISTINCT f.name, f.laenge FROM Fluss f, StadtFluss sf, Ort o, Land l WHERE f.fnr = sf.fnr AND sf.onr = o.onr AND o.lnr = l.lnr AND l.name = 'Deutschland' Gruppieren von Ergebnissen 62 Manchmal müssen die Ergebnisse einer Anfrage gruppiert und verrechnet werden. Bsp.: Wie viele Städte sind in Europa pro Land verzeichnet? SELECT o.onr, l.name FROM Ort o, Land l WHERE o.lnr = l.lnr AND l.knr = 'EU ORDER BY l.name ONR Name AALBOR Dänemark KOPENH Dänemark BERLIN Deutschland DUESSE Deutschland MAINZ Deutschland TALLIN Estland Selbst zählen??? NEIN!

30 Gruppieren von Ergebnissen Manchmal müssen die Ergebnisse einer Anfrage gruppiert und verrechnet werden. Bsp.: Wie viele Städte sind in Europa pro Land verzeichnet? SELECT l.name, COUNT(*) AS Anzahl FROM Ort o, Land l WHERE o.lnr = l.lnr AND l.knr = 'EU GROUP BY l.name ORDER BY l.name ONR Name AALBOR Dänemark KOPENH Dänemark BERLIN Deutschland DUESSE Deutschland MAINZ Deutschland TALLIN Estland Name Dänemark 2 Deutschland 3 Estland 1 Anzahl 63 Aufgaben, Datenbank: terra4 1. Wie viele Staaten haben Megacities (> 5 Mio. Einwohner) als Hauptstadt? SELECT COUNT(*) FROM Land L, Ort O WHERE O.ONR = L.HauptONR AND O.Einwohner > Zählen Sie die Staaten pro Kontinent! Geben Sie die Kontinente nach der Anzahl absteigend aus. SELECT K.Name, COUNT(*) AS Anzahl FROM Land L, Kontinent K WHERE L.KNR = K.KNR GROUP BY K.Name ORDER BY Anzahl DESC GROUP BY entfällt, wenn nur gezählt wird. 64

31 Aufgaben, Datenbank: terra4 3. Wie viele Einwohner haben die Länder pro Kontinent im Schnitt? SELECT k.name AS Kontinent, AVG(l.Einwohner) AS Schnitt FROM Kontinent k, Land l WHERE k.knr = l.knr GROUP BY k.name ORDER BY k.name 4. Welche Städte liegen an mehr als einem Fluss? SELECT o.name, COUNT(*) AS Anzahl FROM Ort o, StadtFluss sf WHERE o.onr = sf.onr GROUP BY o.name HAVING COUNT(*)>1 ORDER BY o.name Weitere BuiltIn- Funktionen: MAX, MIN, SUM, 65 Struktur der kompletten Datenbank miniterra n benachbart m Sprache n gesprochen m Land n Teil von 1 1 n Teil von Ort Hauptstadt 1 1 n durchfließt m Kontinent Fluss 1 mündet 66 n

32 Für Experten Welche Städte liegen an mehr als einem Fluss? Welche Flüsse sind es jeweils? SELECT o.name, f.name FROM Ort o, StadtFluss sf1, Fluss f WHERE o.onr = sf1.onr AND f.fnr = sf1.fnr AND EXISTS (SELECT NULL FROM StadtFluss sf2 WHERE sf1.fnr<>sf2.fnr AND sf2.onr=o.onr) ORDER BY o.name Welche Länder grenzen an Deutschland? SELECT l1.name, l2.name FROM Nachbarland n, Land l1, Land l2 WHERE (n.lnr1='d' OR n.lnr2='d') AND l1.lnr = n.lnr1 AND l2.lnr = n.lnr2 67 Für Experten Welche Länder grenzen an Deutschland? Geben Sie nur die Nachbarländer aus! SELECT IF(l1.LNR='D',l2.Name, l1.name) AS "Direkte Nachbarn" FROM Nachbarland n, Land l1, Land l2 WHERE (n.lnr1='d' OR n.lnr2='d') AND l1.lnr = n.lnr1 AND l2.lnr = n.lnr2 ORDER BY "Direkte Nachbarn" Welche Flüsse münden in den Rhein? SELECT fc.name FROM Fluss fp, Fluss fc WHERE fp.fnr = fc.zielfnr AND fp.name = 'Rhein' ACHTUNG: Nicht genormt! Selbstreferenz der Tabelle Fluss 68

33 u.v.m. SQL bietet noch einige weitere (hier nicht behandelte) Möglichkeiten: OUTER JOINS: Es werden beim Join auch Datensätze angezeigt, die keinen Join-Partner finden. Bsp.: Alle Städte sollen ausgegeben werden und zwar (wenn vorhanden) mit ihren Flüssen. Behandlung von leeren Feldern (NULL-Werten) 69 Agenda Datenbanken Wozu? Abfragesprachesprache SQL Verwaltung MySQL Datenbankmodellierung Themenvernetzung (DB-Zugriff, etc.) Ausblick 70

34 Verwaltung des Datenbanksystems In einem Datenbanksystem müssen Rechte für verschiedene Benutzer verwaltet werden: MySQL arbeitet nach der Installation ohne Schutz des Administrators Jeder kann auf alle Datenbanken zugreifen und diese verändern Mehrere Schüler sollen sich einen Datenbankserver teilen, dabei sich aber nichts gegenseitig kaputtmachen Die Rechte können sehr fein vergeben werden, am Wichtigsten sind: SELECT: Benutzer kann Tabellen auslesen INSERT/UPDATE/DELETE: Tabelleninhalte dürfen verändert werden CREATE/ALTER/ : Tabellenstruktur darf verändert werden 71 Grundlegenden Schutz einrichten Das XAMPP-Paket erlaubt das Einrichten des Administrator- Passworts auf einfache Weise: Rufen Sie auf. Klicken Sie auf Sicherheitscheck. Im Link unter der Tabelle können wichtige Sicherheitslücken geschlossen werden. Setzen Sie zumindest das Passwort für den Administrator (root) und stellen Sie die Anmeldung um auf http. 72 dann: MySQL Server neu starten (XAMPP Control Panel)

35 MySQL Passwort für Administrator ändern phpmyadmin in Browser starten Menüpunkt Rechte Benutzer root auswählen und bearbeiten Passwort eingeben und speichern Beim nächsten Aufruf von phpmyadmin ist die Eingabe des neuen Passworts notwendig 73 Benutzer / Rechte vergeben Über den Reiter Rechte können weitere Benutzer angelegt werden und Rechte auf den Datenbanken vergeben werden z.b. für einen zentralen Datenbankserver sollen pro Schülergruppe exklusive Datenbanken zur Verfügung gestellt werden Da phpmyadmin immer lokal auf dem Server läuft 74

36 Benutzer / Rechte vergeben Einem Benutzer können aber auch Rechte (z.b. nur Leserecht) auf zentralen Datenbanken wie miniterra vergeben werden: 75 Problem: XAMPP-Rechte Jetzt kann der Benutzer über oder über vom Schulnetzwerk auf den Server zugreifen. Problem: Neues Rechte-System in aktuelleren XAMPP-Versionen Manuelles Anpassen der Konfigurationsdatei httpd-xampp.conf nötig. 76

37 Anpassen der Konfigurationsdatei httpd-xampp.conf 77 Im Verzeichnis \xampp\apache\conf\extra findet sich die Konfigurationsdatei httpd-xampp.conf Sicherungskopie anlegen! Im letzten Abschnitt muss der Zugriff wieder erlaubt werden, indem das Verbot auskommentiert wird. Danach muss der Webserver mit XAMPP Control Panel neu gestartet werden. Dies ist die quick and dirty -Methode ohne Beachtung eines Sicherheitskonzepts Die Anpassung ist für ein öffentliches System im Internet absolut ungeeignet! Benutzer anlegen 1. Schützen Sie den Administrator-Zugang für ihren mysql-server wie zuvor beschrieben. 2. Legen Sie einen Benutzer ifb und Passwort Speyer an. Dieser soll die Leserechte (SELECT) auf der Datenbank miniterra erhalten. 3. Passen Sie die Konfigurationsdatei httpd-xampp.conf an. 4. Versuchen Sie, mit diesem Benutzer auf die Datenbank des Nachbarn / der Nachbarin zuzugreifen. 78

38 Skript zur Anlage der Datenbanken Zur Vereinfachung existiert ein PHP-Skript, das eine erste Umgebung für den Unterricht einrichtet: Verzeichnis terra_install in das htdocs-verzeichnis des XAMPP-Pakets kopieren. aufrufen. Das Skript legt die Datenbanken terra1 4 und miniterra an. erzeugt Benutzerkonten und Datenbanken für die Schüler mit entsprechenden Rechten. 79 Agenda Datenbanken Wozu? Abfragesprachesprache SQL Verwaltung MySQL Datenbankmodellierung Themenvernetzung (DB-Zugriff, etc.) Ausblick 80

39 Ein neues Informationssystem Anforderungskatalog Schulverwaltung Die Benutzer können eine Liste aller Lehrer mit ihrem Dienstkürzel abrufen. Für jede Klasse ist eine Liste der durchgeführten Klassenfahrten mit dem leitenden Lehrer ersichtlich. StD L. Lämpel übernimmt dieses Jahr die 7a als Klassenleiter. Die Klasse kann das im Internet schon in den Ferien erfahren. Eine Suche ist möglich über Klassenstufe, Lehrer oder Fach. StR A. Kribich hat sich fortgebildet und darf ab diesem Jahr neben Mathematik und ev. Religion auch Informatik unterrichten. Die Fachschaftsliste muss aktualisiert werden. Nachdem LiA Sch. Merz in Rente gegangen ist, geht die Fachbereichsleitung in Sport an OStR G. Lenk. 81 Modellbildung Um ein Informationssystem zu erstellen, muss ein Ausschnitt der realen Welt ( Miniwelt ) im Computersystem erfasst werden. Die Benutzer können eine Liste aller Lehrer mit ihrem Dienstkürzel abrufen. StD L. Lämpel übernimmt dieses Jahr die 7a als Klassenleiter. Die Klasse kann das im Internet schon in den Ferien erfahren. Eine Suche ist möglich über Klassenstufe, Lehrer oder Fach. Miniwelt Datenmodell? 82 Unstrukturierte Informationen über die Miniwelt Repräsentation der Informationen als strukturierte Daten

40 Modellbildung 83 Um aus einer Beschreibung einer Miniwelt das Datenmodell einer Datenbank abzuleiten, bietet es sich an, zunächst ein grafisches Konzept der Daten zu erstellen. Text Externe Sicht Konzeptionelle Sicht Internes Modell (z.b. relationales Datenmodell) Konzeptionelles Modell E/R-Diagramme E/R-Diagramme dienen dazu, das konzeptionelle Modell des Informationssystems zu erstellen. Es werden zwei Konstrukte verwendet: Entitätstypen Beziehungstypen (Relationships) Eine Entität ist ein bestimmtes Objekt der realen Welt oder unserer Vorstellung z.b. eine Person, ein Gegenstand, ein Ereignis Entitäten mit gleichen Eigenschaften werden zu Entitätstypen zusammengefasst Symbol: Rechteck Lehrer 84

41 E/R-Diagramme - Entitätstyp 85 Beispiel Entitätstyp: Entität: Lehrer Lämpel, Kürzel Lä Entitätstyp: Menge aller Lehrer mit den Merkmalen Vorname, Nachname, Kürzel, Primärschlüssel: Kürzel (?) (oder ein künstlicher Schlüssel) Entitätstyp Lehrer Kürzel: Lä Name: Lämpel Vorname: Ludwig Titel: StD Kürzel: Kr Name: Kribich Vorname: Alfred Titel: StR Kürzel: Le Name: Lenk Vorname: Gertrud Titel: OStR' 3 Entitäten E/R-Diagramme - Beziehungstyp Gleichartige Beziehungen zwischen Entitäten werden als ein Beziehungstyp zwischen den Entitätstypen definiert. Symbol: Raute Beispiel: Ein Lehrer führt Klassenfahrten durch. Kuerzel: Lä Name: Lämpel Kuerzel: Kr Name: Kribich Kuerzel: Me Name: Merz Beziehungen Stufe: 8 Teil: a Stufe: 11 Teil: M1 Stufe: 12 Teil: m3 Lehrer Klassenfahrt Klasse 86 Entitätstyp Beziehungstyp Entitätstyp

42 Modellierung oft nicht eindeutig Die Beziehung Klassenfahrt könnte man auch als eigenen Entitätstyp modellieren. Modellierung ist oft nicht eindeutig, es gibt je nach Ansicht mehrere sinnvolle Modelle für eine Miniwelt. Lehrer führt durch Klassenfahrt Klasse nimmt teil 87 E/R-Diagramme - Attribute Die Eigenschaften aller Entitäten und Beziehungen eines Entitätstyps bzw. eines Beziehungstyps werden mit Hilfe von Attributen erfasst. Symbol: Ellipse Beispiel: Name Vorname Lehrer beschreibend Kürzel identifizierend Klassenfahrt Ziel Datum Stufe Klasse Teil Anzahl 88

Informationssysteme / Datenbankabfragen

Informationssysteme / Datenbankabfragen Informationssysteme / Datenbankabfragen Thomas Mohr I N F O R M A T I K Agenda Datenbanken Wozu? Abfragesprachesprache SQL Verwaltung MySQL Datenbankmodellierung Themenvernetzung (DB-Zugriff, etc.) Ausblick

Mehr

Relationale Datenbanken Kursziele

Relationale Datenbanken Kursziele Relationale Datenbanken Kursziele DB Grundlagen Daten-Modellierung Relationales Modell und DB => Praxis: Mit SQL als Anfragesprache Mit MySQL als DB RDB 1-1 Kursinhalt (Tage) 1. DB Einleitung / Entity-Relationship

Mehr

Einführung in SQL Datenbanken bearbeiten

Einführung in SQL Datenbanken bearbeiten Einführung in SQL Datenbanken bearbeiten Jürgen Thomas Entstanden als Wiki-Buch Bibliografische Information Diese Publikation ist bei der Deutschen Nationalbibliothek registriert. Detaillierte Angaben

Mehr

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar

SQL 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-

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

Mehr

Fachbereich Informatik Praktikum 1

Fachbereich Informatik Praktikum 1 Hochschule Darmstadt DATA WAREHOUSE SS2015 Fachbereich Informatik Praktikum 1 Prof. Dr. S. Karczewski Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 14.April.2015 1. Kurzbeschreibung In diesem Praktikum geht

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen:

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen: 1 Einführung in Datenbanksysteme Fast jeder kennt Excel und hat damit in seinem Leben schon einmal gearbeitet. In Excel gibt es Arbeitsblätter, die aus vielen Zellen bestehen, in die man verschiedene Werte

Mehr

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language: SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In

Mehr

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem

Mehr

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen.

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. Datenbankabfragen (Query) mit SQL (Structured Query Language) 1 Aufbau des SELECT-Befehls Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. SQL-Syntax: SELECT spaltenliste FROM tabellenname

Mehr

Relationale Datenbanken in der Praxis

Relationale Datenbanken in der Praxis Seite 1 Relationale Datenbanken in der Praxis Inhaltsverzeichnis 1 Datenbank-Design...2 1.1 Entwurf...2 1.2 Beschreibung der Realität...2 1.3 Enitiy-Relationship-Modell (ERM)...3 1.4 Schlüssel...4 1.5

Mehr

Datenbank - Teil 3. Ziele: Eine Datenbank anlegen mit SQL. Daten eingeben mit SQL. Abfragen stellen mit SQL und PHP.

Datenbank - Teil 3. Ziele: Eine Datenbank anlegen mit SQL. Daten eingeben mit SQL. Abfragen stellen mit SQL und PHP. Ziele: Eine Datenbank anlegen mit SQL Daten eingeben mit SQL Abfragen stellen mit SQL und PHP 1 Datenbankserver Entwickelt von der schwedischen Aktiengesellschaft MySQL Unter GNU General Public License

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2015 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

Der Einsatz von MySQL-Datenbanken (mit XAMPP)

Der Einsatz von MySQL-Datenbanken (mit XAMPP) Informatik in der Mittelstufe: Der Einsatz von MySQL-Datenbanken (mit XAMPP) Hannes Heusel Eduard-Spranger-Gymnasium Landau Warum soll ich eine MySQL- Datenbank verwenden? kostenlos Mehrbenutzersystem

Mehr

1 Grundbegriffe...1. 2 Datenbanksysteme...7. 3 Entwicklung von Datenbanksystemen...15. Inhaltsverzeichnis. 1.1 Information und Daten...

1 Grundbegriffe...1. 2 Datenbanksysteme...7. 3 Entwicklung von Datenbanksystemen...15. Inhaltsverzeichnis. 1.1 Information und Daten... Inhaltsverzeichnis 1 Grundbegriffe...1 1.1 Information und Daten...2 1.2 Datenorganisation...3 1.3 Dateikonzept...5 1.4 Kontroll- und Vertiefungsfragen...6 2 Datenbanksysteme...7 2.1 Datenintegration...7

Mehr

3. Spezielle ER-Modelle und Tabellenableitung. Transformation von ER-Diagrammen in Relationen

3. Spezielle ER-Modelle und Tabellenableitung. Transformation von ER-Diagrammen in Relationen 3. Spezielle ER-Modelle und Tabellenableitung Spezialfälle von ER-Modellen Grundlage, was sind Relationen Transformation von ER-Diagrammen in Relationen 56 Lesebeispiel Access (Realisierungmodell!) 57

Mehr

SQL, MySQL und FileMaker

SQL, MySQL und FileMaker SQL, MySQL und FileMaker Eine kurze Einführung in SQL Vorstellung von MySQL & phpmyadmin Datenimport von MySQL in FileMaker Autor: Hans Peter Schläpfer Was ist SQL? «Structured Query Language» Sprache

Mehr

Einstieg in relationale Datenbanken mit MySQL. Dr. Kerstin Puschke September 2009

Einstieg in relationale Datenbanken mit MySQL. Dr. Kerstin Puschke September 2009 Einstieg in relationale Datenbanken mit MySQL Dr. Kerstin Puschke September 2009 1 Lizenz Lizenz Dieser Text steht unter einer Creative Commons Attribution-Share Alike 3.0 Germany Lizenz, siehe http://creativecommons.org/licenses/by-sa/3.0/de/

Mehr

Unterabfragen (Subqueries)

Unterabfragen (Subqueries) Unterabfragen (Subqueries) Die kürzeste Formulierung ist folgende: SELECT Felderliste FROM Tabelle1 WHERE Tabelle1.Feldname Operator (SELECT Feldname FROM Tabelle2 WHERE Bedingung); wobei Tabelle1 und

Mehr

SQL. SQL = Structured Query Language, ist eine standardisierte Sprache zum Gebrauch im Zusammenhang mit Datenbanken.

SQL. SQL = Structured Query Language, ist eine standardisierte Sprache zum Gebrauch im Zusammenhang mit Datenbanken. Vorlesungsteil SQL Grundlagen - 1 / 8 - SQL SQL = Structured Query Language, ist eine standardisierte Sprache zum Gebrauch im Zusammenhang mit Datenbanken. Auf einem Server (Rechner im Netz, der Dienste

Mehr

SQL- & NoSQL-Datenbanken - Speichern und Analysen von großen Datenmengen

SQL- & NoSQL-Datenbanken - Speichern und Analysen von großen Datenmengen SQL- & NoSQL-Datenbanken - Speichern und Analysen von großen Datenmengen Lennart Leist Inhaltsverzeichnis 1 Einführung 2 1.1 Aufgaben einer Datenbank...................... 2 1.2 Geschichtliche Entwicklung

Mehr

Sructred Query Language

Sructred Query Language Sructred Query Language Michael Dienert 11. November 2010 Inhaltsverzeichnis 1 Ein kurzer Versionsüberblick 1 2 SQL-1 mit einigen Erweiterungen aus SQL-92 2 3 Eine Sprache zur Beschreibung anderer Sprachen

Mehr

2 7 Erweiterungen. 7.1 Prozess-Kommunikation mit Datenbanken

2 7 Erweiterungen. 7.1 Prozess-Kommunikation mit Datenbanken 2 7 Erweiterungen 7 Erweiterungen 7.1 Prozess-Kommunikation mit Datenbanken Im Buch Einstieg in das Programmieren mit MATLAB wird im Abschnitt 4.8 das Thema Prozess-Kommunikation am Beispiel von MS-Excel

Mehr

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Datenbanktechnologie 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

Mehr

Einführung in die Informatik II

Einführung in die Informatik II Einführung in die Informatik II Die Structured Query Language SQL Prof. Dr. Nikolaus Wulff SQL Das E/R-Modell lässt sich eins zu eins auf ein Tabellenschema abbilden. Benötigt wird eine Syntax, um Tabellen

Mehr

Carl-Engler-Schule Karlsruhe Datenbank 1 (5)

Carl-Engler-Schule Karlsruhe Datenbank 1 (5) Carl-Engler-Schule Karlsruhe Datenbank 1 (5) Informationen zur Datenbank 1. Definition 1.1 Datenbank-Basis Eine Datenbank-Basis ist eine Sammlung von Informationen über Objekte (z.b Musikstücke, Einwohner,

Mehr

Datenadminstrator, Datenbankdesigner, Systemanalytiker (für die logische Sicht zuständig)

Datenadminstrator, Datenbankdesigner, Systemanalytiker (für die logische Sicht zuständig) 1 Grundlagen Begriffe Daten bekannte zutreffende Tatsachen über die Domäne/Miniwelt DBS Einsatz eines DBMS für eine Datenbank, DBS besteht aus folgenden Komponenten: 1. DBMS 2. Datenbank DBMS Software

Mehr

Definition Informationssystem

Definition Informationssystem Definition Informationssystem Informationssysteme (IS) sind soziotechnische Systeme, die menschliche und maschinelle Komponenten umfassen. Sie unterstützen die Sammlung, Verarbeitung, Bereitstellung, Kommunikation

Mehr

Business Intelligence Praktikum 1

Business Intelligence Praktikum 1 Hochschule Darmstadt Business Intelligence SS 2014 Fachbereich Informatik Praktikumsversuch 1 Prof. Dr. C. Wentzel Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 07.05.2014 Business Intelligence Praktikum

Mehr

SQL-Befehlsliste. Vereinbarung über die Schreibweise

SQL-Befehlsliste. Vereinbarung über die Schreibweise Vereinbarung über die Schreibweise Schlüsselwort [optionale Elemente] Beschreibung Befehlsworte in SQL-Anweisungen werden in Großbuchstaben geschrieben mögliche, aber nicht zwingend erforderliche Teile

Mehr

IV. Datenbankmanagement

IV. Datenbankmanagement Wirtschaftsinformatik 2 (PWIN) IV. Datenbankmanagement Kapitel 2: Datenmanipulationssprache SQL Wirtschaftsinformatik 2 (PWIN) SS 2009, Professur für Mobile Business & Multilateral Security 1 Agenda 1.

Mehr

Gliederung und Einordnung

Gliederung und Einordnung Gliederung und Einordnung 1. Objektorientierte Programmierung mit Object Pascal (5. Studienbrief, Kapitel 5) 9.4. + 16.4. 2. Software-Bausteine am Beispiel der Delphi-Komponenten (5. Studienbrief, Kapitel

Mehr

Relationale Datenbanken Kursziele

Relationale Datenbanken Kursziele Relationale Datenbanken Kursziele DB Grundlagen Daten-Modellierung Relationales Modell und DB => Praxis: Mit SQL als Anfragesprache Mit MySQL als DB RDB 1-1 Kursinhalt (Tage) 1. Einleitung / Entity-Relationship

Mehr

Geordnete Form...36 Erfassung und Speicherung...37 Relationale Datenbanken...37 Einfache Tabellen...37 Objekte und Begriffe relationaler

Geordnete Form...36 Erfassung und Speicherung...37 Relationale Datenbanken...37 Einfache Tabellen...37 Objekte und Begriffe relationaler Inhaltsverzeichnis Einleitung...13 SQL: Die Abfragesprache für Datenbanken...17 Kennzeichnende Merkmale von SQL...17 SQL-Dialekte...18 Kurze Entwicklungsgeschichte...18 SQL/86 oder SQL/1...19 SQL/89 oder

Mehr

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung Inhalt Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle Daten und Tabellen Normalisierung, Beziehungen, Datenmodell SQL - Structured Query Language Anlegen von Tabellen Datentypen (Spalten,

Mehr

Informatik Datenbanken SQL-Einführung

Informatik Datenbanken SQL-Einführung Informatik Datenbanken SQL-Einführung Gierhardt Inhaltsverzeichnis 1 Vorbemerkungen 1 2 Auswahl-Abfragen mit SELECT 2 2.1 Selektion...................................... 2 2.2 Projektion.....................................

Mehr

Structured Query Language (SQL) 1

Structured Query Language (SQL) 1 Structured Query Language (SQL) 1 1. Grundlagen und Hilfsmittel Structured Query Language, kurz SQL, wurde in den 70er Jahren bei IBM entwickelt, als eine Arbeitsgruppe die erste relationale Datenbank

Mehr

Übung 1: Ein Website News-System mit MySQL

Übung 1: Ein Website News-System mit MySQL Übung 1: Ein Website News-System mit MySQL In der Vorübung haben wir bereits mit Hilfe eines ERMs den Datenbankentwurf erstellt und daraus die folgenden Tabellen abgeleitet: Nun muss diese Datenbank in

Mehr

TimeSafe Leistungserfassung

TimeSafe Leistungserfassung Keep your time safe. TimeSafe Leistungserfassung Adressimport 1/8 Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 Allgemeines... 3 1.1 Adressen in der TimeSafe Leistungserfassung... 3 1.2 Organisationen und/oder

Mehr

Datenbanken mit OpenOffice-Base Tabellen und einfache Abfragen

Datenbanken mit OpenOffice-Base Tabellen und einfache Abfragen Datenbanken mit OpenOffice-Base Tabellen und einfache Abfragen Im Rahmen der IFB - Veranstaltung Nr. 92 177 01 01 Informatik in der Sek I Programmierung vom 21.-22.09.2009 Peter Dauscher Gymnasium am Kaiserdom,

Mehr

Michaela Weiss 01. April 2015. Lerneinheit 4: Relationale Datenbanken am Beispiel von MySQL

Michaela Weiss 01. April 2015. Lerneinheit 4: Relationale Datenbanken am Beispiel von MySQL Michaela Weiss 01. April 2015 Lerneinheit 4: Relationale Datenbanken am Beispiel von MySQL Seite 2 Datenbanken Allgemeines: Datenbank(management)systeme ermöglichen die Speicherung großer Datenmengen Kennzeichen

Mehr

PostgreSQL im praktischen Einsatz. Stefan Schumacher

PostgreSQL im praktischen Einsatz. Stefan Schumacher PostgreSQL im praktischen Einsatz 2. Brandenburger Linux Infotag 2005 Stefan Schumacher , PGP Key http:/// $Header: /home/daten/cvs/postgresql/folien.tex,v 1.11 2005/04/25

Mehr

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen C3: Structured Query Language Lernziele: Nach der Bearbeitung dieser Lektion haben Sie folgende Kenntnisse erworben: Sie können elementaren

Mehr

DB2 SQL, der Systemkatalog & Aktive Datenbanken

DB2 SQL, der Systemkatalog & Aktive Datenbanken DB2 SQL, der Systemkatalog & Aktive Datenbanken Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Auf DB2 Datenbanken zugreifen DB2 Datenbanken benutzen Abfragen ausführen Den Systemkatalog

Mehr

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

Mehr

SQL-DDL und SQL-Anfragen. CREATE TABLE Kategorie (Bezeichnung VARCHAR(15) NOT NULL PRIMARY KEY, Klassifikationskriterium VARCHAR(100) NOT NULL )

SQL-DDL und SQL-Anfragen. CREATE TABLE Kategorie (Bezeichnung VARCHAR(15) NOT NULL PRIMARY KEY, Klassifikationskriterium VARCHAR(100) NOT NULL ) Technische Universität München WS 2003/04, Fakultät für Informatik Datenbanksysteme I Prof. R. Bayer, Ph.D. Lösungsblatt 6 Dipl.-Inform. Michael Bauer Dr. Gabi Höfling 1.12.2003 SQL-DDL und SQL-Anfragen

Mehr

AixVerein 2.0 - Anleitung zur Einrichtung des

AixVerein 2.0 - Anleitung zur Einrichtung des Seite 1/6 AixVerein 2.0 - Anleitung zur Einrichtung des Datenbank-Servers und der Dokumentenablage Bei der vorliegenden Anwendung handelt es sich um eine Client-Server-Anwendung, d.h. die Software wird

Mehr

Begleitskript. zum PHP/MySQL. Kurs

Begleitskript. zum PHP/MySQL. Kurs Begleitskript zum PHP/MySQL Kurs http://www.online-platform.net Dieser Text unterliegt der GNU General Public License. Er darf als ganzes oder in Auszügen kopiert werden, vorausgesetzt, dass sich dieser

Mehr

Fachhochschule Kaiserslautern Labor Datenbanken mit MySQL SS2006 Versuch 1

Fachhochschule Kaiserslautern Labor Datenbanken mit MySQL SS2006 Versuch 1 Fachhochschule Kaiserslautern Fachbereiche Elektrotechnik/Informationstechnik und Maschinenbau Labor Datenbanken Versuch 1 : Die Grundlagen von MySQL ------------------------------------------------------------------------------------------------------------

Mehr

Business Intelligence Praktikum 1

Business Intelligence Praktikum 1 Hochschule Darmstadt Business Intelligence WS 2013-14 Fachbereich Informatik Praktikumsversuch 1 Prof. Dr. C. Wentzel Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 14.10.2013 Business Intelligence Praktikum

Mehr

IBM Informix SQL. Seminarunterlage. Version 11.04 vom

IBM Informix SQL. Seminarunterlage. Version 11.04 vom Seminarunterlage Version: 11.04 Version 11.04 vom 27. April 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen

Mehr

Entwurf einer einfachen Datenbank zur Wunschzettel- Verwaltung

Entwurf einer einfachen Datenbank zur Wunschzettel- Verwaltung Entwurf einer einfachen Datenbank zur Wunschzettel- Verwaltung Prof. Dr. Alfred Holl, Georg Simon Ohm University of Applied Sciences, Nuremberg, Germany 29.03.2014/1 Entwurf einer einfachen Datenbank zur

Mehr

Dynamische Webseiten mit PHP 1

Dynamische Webseiten mit PHP 1 Dynamische Webseiten mit PHP 1 Webserver, PHP und MYSQL Ein Webserver dient dazu, Internetseiten an PCs zu senden, von denen sie aufgerufen werden. Beispiel: Sie tippen im Browser www.fosbosweiden.de ein.

Mehr

Relationale Datenbanken Datenbankgrundlagen

Relationale Datenbanken Datenbankgrundlagen Datenbanksystem Ein Datenbanksystem (DBS) 1 ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern

Mehr

Datenbanksysteme SS 2007

Datenbanksysteme SS 2007 Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 9c: Datenbankapplikationen Architektur einer Web-Applikation mit Servlets, JSPs und JavaBeans

Mehr

Software-Engineering Einführung

Software-Engineering Einführung Software-Engineering Einführung 7. Übung (04.12.2014) Dr. Gergely Varró, gergely.varro@es.tu-darmstadt.de Erhan Leblebici, erhan.leblebici@es.tu-darmstadt.de Tel.+49 6151 16 4388 ES Real-Time Systems Lab

Mehr

Die Analyse großer Datensätze mittels freier Datenbanksysteme Dr Dirk Meusel meusel@iat.uni-leipzig.de

Die Analyse großer Datensätze mittels freier Datenbanksysteme Dr Dirk Meusel meusel@iat.uni-leipzig.de Institut für Angewandte Trainingswissenschaft Leipzig ein Institut des Trägervereins IAT / FES des DOSB e.v. Die Analyse großer Datensätze mittels freier Datenbanksysteme Dr Dirk Meusel meusel@iat.uni-leipzig.de

Mehr

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2 5 Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn 7 7. Datenbank-Zugriff Zum Beispiel aus PHP-Skripten: Client 7-2 Struktur einer Datenbank 7-3 Erzeugen von Datenbanken

Mehr

Grundkurs MySQL und PHP

Grundkurs MySQL und PHP Martin Pollakowski Grundkurs MySQL und PHP So entwickeln Sie Datenbanken mit Open-Source-Software vieweg Inhaltsverzeichnis Anwendung und Nutzen von Datenbanken 1 1.1 Was ist eine Datenbank? 1 1.2 Abgrenzung

Mehr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr Raum: LF 230 Bearbeitung: 9.-11. Mai 2005 Datum Gruppe Vorbereitung Präsenz Aktuelle Informationen unter: http://www.is.informatik.uni-duisburg.de/courses/dbp_ss03/ Tabellen in IBM DB2 Tabellen Eine relationale

Mehr

SQL-Anweisungen. SELECT (SQL Data Query Language)

SQL-Anweisungen. SELECT (SQL Data Query Language) SQL-Anweisungen SELECT (SQL Data Query Language) SELECT * SELECT * FROM "meine Tabelle"; SELECT feldname1, feldname2 SELECT feldname1, feldname2 FROM meinetabelle ORDER BY feldname2, feldname1 DESC; WHERE

Mehr

Installationsanweisung für

Installationsanweisung für Installationsanweisung für 1. Installation! Vorabinformationen Daten und Programm sind in der gleichen Datei vereint. Die Datei darf in keinem schreibgeschützten Verzeichnis liegen. Alle Dateien und Ordner

Mehr

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004) Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der

Mehr

Datenbanksysteme 1. Organisation. Prof. Stefan F. Keller. Ausgabe 2005. Copyright 2005 HSR SS 2005

Datenbanksysteme 1. Organisation. Prof. Stefan F. Keller. Ausgabe 2005. Copyright 2005 HSR SS 2005 Datenbanksysteme 1 Organisation Ausgabe 2005 Prof. Stefan F. Keller SS 2005 Copyright 2005 HSR Inhalt Einführung Relationales Datenmodell, Datenmodellierung DB-Entwurf, Normalisierung SQL-Data Definition

Mehr

Inhalt. Vorwort 11. Inhalt der Buch-CD 13. 1 Einführung 17

Inhalt. Vorwort 11. Inhalt der Buch-CD 13. 1 Einführung 17 Inhalt Vorwort 11 Inhalt der Buch-CD 13 1 Einführung 17 1.1 Was ist MySQL? 17 1.2 Die wichtigsten Eigenschaften von MySQL 20 1.3 Bezugsquellen und Versionen 23 1.4 MySQL im Vergleich zu anderen Datenbanken

Mehr

Werner Geers. Berufliche Informatik. Zusatzinformationen ISBN:978-3-427-60080-0. Bestellnr.:60080. by Werner Geers und Bildungsverlag1, Troisdorf

Werner Geers. Berufliche Informatik. Zusatzinformationen ISBN:978-3-427-60080-0. Bestellnr.:60080. by Werner Geers und Bildungsverlag1, Troisdorf Werner Geers Berufliche Informatik ISBN:978-3-427-60080-0 Bestellnr.:60080 Zusatzinformationen 1 ARBEITEN MIT HEIDISQL... 2 1.1 Vorbemerkungen... 2 1.2 Herstellung einer Verbindung zu einem Datenbanksystem...

Mehr

Erste Schritte, um selber ConfigMgr Reports zu erstellen

Erste Schritte, um selber ConfigMgr Reports zu erstellen Thomas Kurth CONSULTANT/ MCSE Netree AG thomas.kurth@netree.ch netecm.ch/blog @ ThomasKurth_CH Erste Schritte, um selber ConfigMgr Reports zu erstellen Configuration Manager Ziel Jeder soll nach dieser

Mehr

Whitepaper. Produkt: combit Relationship Manager 7, address manager 17. Import von Adressen nach Firmen und Kontakte

Whitepaper. Produkt: combit Relationship Manager 7, address manager 17. Import von Adressen nach Firmen und Kontakte combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager 7, address manager 17 Import von Adressen nach Firmen und Kontakte Import von Adressen nach Firmen und Kontakte

Mehr

Die SQL-Syntax für den Befehl CREATE TABLE sieht folgendermassen aus:

Die SQL-Syntax für den Befehl CREATE TABLE sieht folgendermassen aus: Einführung in MySQL SQL (Structured Query Language) ist eine Computersprache zum Speichern, Bearbeiten und Abfragen von Daten in relationalen Datenbanken. Eine relationale Datenbank kann man sich als eine

Mehr

Institut für Informatik

Institut für Informatik Aufgaben für die 14. und 15. zur LV "Grundlagen der Informatik" Thema: Datenbanken ( ERM: Entity-Relationship-Modell und SQL: Structured Query Language ) sowie HTML (Hypertext Markup Language) -------------------------------------------------------------------------------------------------------------------------

Mehr

Dokumentation zur Anlage eines JDBC Senders

Dokumentation zur Anlage eines JDBC Senders Dokumentation zur Anlage eines JDBC Senders Mithilfe des JDBC Senders ist es möglich auf eine Datenbank zuzugreifen und mit reiner Query Datensätze auszulesen. Diese können anschließend beispielsweise

Mehr

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt. Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Datenbanken und Informationssysteme II Szenario: Projektverwaltung. Es gibt Projekte, Projektleiter, Mitarbeiter und ihre Zuordnung zu Projekten.

Mehr

Eine weitere Möglichkeit "die grosse weite Welt" zu erschliessen sind ODBC/JDBC bzw. ESS Verbindungen.

Eine weitere Möglichkeit die grosse weite Welt zu erschliessen sind ODBC/JDBC bzw. ESS Verbindungen. Database Designs Alexis Gehrt / alexis@database-designs.ch - Erster Kontakt mit FileMaker ca. 1991 ( Version 2, 2.1) - Jan 2000 - Database Designs - Seit 2007 bei einem Kunden (Linden-Grafik AG) angestellt

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

KompetenzManager http://www.kompetenzmanager.ch/mah Manual für die Benutzung der Website

KompetenzManager http://www.kompetenzmanager.ch/mah Manual für die Benutzung der Website KompetenzManager http://www.kompetenzmanager.ch/mah Manual für die Benutzung der Website Inhalt Inhalt... 1 1. Anmelden beim Kompetenzmanager... 3 2. Erstellen eines neuen Kompetenzprofils... 4 2.1. Wizard

Mehr

Herbstsemester 2009. Datenbanken mit Übungen Kapitel 4: SQL. H. Schuldt. Inhalt

Herbstsemester 2009. Datenbanken mit Übungen Kapitel 4: SQL. H. Schuldt. Inhalt Herbstsemester 2009 Datenbanken mit Übungen Kapitel 4: SQL H. Schuldt Inhalt Datenmanipulationssprache SQL: SQL (Structured Query Language) ist die Standardsprache für die Datendefinition und Datenmanipulation

Mehr

Fundamentals of Software Engineering 1

Fundamentals of Software Engineering 1 Folie a: Name Fundamentals of Software Engineering 1 Grundlagen der Programmentwurfstechnik 1 Sommersemester 2012 Dr.-Ing. Stefan Werner Fakultät für Ingenieurwissenschaften Folie 1 Inhaltsverzeichnis

Mehr

Datenbanken. Christian Heidrich. 15.02.2007 Datenbanken Wie sag ich s meinen Schülern?!

Datenbanken. Christian Heidrich. 15.02.2007 Datenbanken Wie sag ich s meinen Schülern?! Datenbanken Christian Heidrich Lehrplan Gymnasium Inf 9.2 (NTG) Realschule Inf 8.3 und 10.1 Fachoberschule (Technik) TI 12.3 Unterrichtliche Gliederung Einblick: Große Datenmengen und ihre Verwaltung (2)

Mehr

Wirtschaftsinformatik. SQL Abfragen und QBE. Unterrichtsskript. Version: 2.0

Wirtschaftsinformatik. SQL Abfragen und QBE. Unterrichtsskript. Version: 2.0 Wirtschaftsinformatik SQL Abfragen und QBE Unterrichtsskript Version: 2.0 Autor: Jonas Lanz Datum: 02.06.2006 FHNW Hochschule für Wirtschaft 2 / 29 Inhaltsverzeichnis 1. Einführung 3 1.1 Relationale Operationen

Mehr

Klausur Datenbanksysteme

Klausur Datenbanksysteme Prüfung Datenbanksysteme, 31.Jan. 2003 S. 1 Klausur Datenbanksysteme Name: Matrikel-Nr.: Studiengang: Aufgabenblatt nicht vor Beginn der Prüfung umdrehen! Prüfer: Prof. Dr. Martin Hulin Dauer: 90 Minuten

Mehr

software TECHNISCHE KAUFLEUTE UND HWD

software TECHNISCHE KAUFLEUTE UND HWD software TECHNISCHE KAUFLEUTE UND HWD Was ist Software? Definition. Die Gesamtheit der auf einem Computer laufenden Programme mit den dazu gehörigen Daten nennt man S. Kernstücke von Programmen sind Algorithmen,

Mehr

Access und OpenOffice.org

Access und OpenOffice.org Access-Datenbanken in OpenOffice.org 1.1 einbinden Herausgegeben durch das OpenOffice.org Germanophone-Projekt Autoren Autoren vorhergehender Versionen Timo Kozlowski Alle in diesem Dokument erwähnten

Mehr

Heureka CAQ. Reorganisation 7.0. QDaTech GmbH

Heureka CAQ. Reorganisation 7.0. QDaTech GmbH Heureka CAQ Reorganisation 7.0 QDaTech GmbH This manual was produced using ComponentOne Doc-To-Help. Inhalt Einleitung 1 Allgemeines...1 Welche Reorganisation ist notwendig...1 Notwendige Dateien...2 Ablauf

Mehr

PostgreSQL auf Debian System

PostgreSQL auf Debian System PostgreSQL auf Debian System Inhaltsverzeichnis 1. Installation 1.1 Installation 1.2 Mit postgres anmelden 2. Benutzer anlegen 3. Datenbank anlegen 3.1 Optionen 3.2 Datenbank mydatabase anlegen 4. Datenbank

Mehr

PIWIN 1 Übung Blatt 5

PIWIN 1 Übung Blatt 5 Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:

Mehr

Vorlesung. Informationssysteme. Prof. Dr. Hans Czap. Lehrstuhl für Wirtschaftsinformatik I. Email: Hans.Czap@uni-trier.de

Vorlesung. Informationssysteme. Prof. Dr. Hans Czap. Lehrstuhl für Wirtschaftsinformatik I. Email: Hans.Czap@uni-trier.de Vorlesung Grundlagen betrieblicher Informationssysteme Prof. Dr. Hans Czap Email: Hans.Czap@uni-trier.de - II - 1 - Inhalt Kap. 1 Ziele der Datenbanktheorie Kap. 2 Datenmodellierung und Datenbankentwurf

Mehr

Knottenwäldchen Software

Knottenwäldchen Software Knottenwäldchen Software Installationsanleitung für die netzbasierte Lösung Knottenwäldchen Software März.2011 Knottenwäldchen Software Seite 2 1 Inhalt 1 Inhalt... 2 2 Übersicht... 3 3 Installation...

Mehr

Einführung in SQL mit Oracle

Einführung in SQL mit Oracle Seminar Einführung in SQL mit Oracle von Prof. Dr. Rainer Schwenkert Hochschule München c Vervielfältigung nur mit Zustimmung des Autors Themenbereiche SQL-Historie Wichtige DDL- und DML-Anweisungen Der

Mehr

Verschiedene Arten des Datenbankeinsatzes

Verschiedene Arten des Datenbankeinsatzes 1 Beispiele kommerzieller DBMS: Kapitelinhalt Was charakterisiert und unterscheidet verschiedene Einsatzbereiche für. Welche prinzipiell unterschiedlichen Anforderungen ergeben sich für das DBMS bei Ein-

Mehr

CARL HANSER VERLAG. Christopher Allen. Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7

CARL HANSER VERLAG. Christopher Allen. Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7 CARL HANSER VERLAG Christopher Allen Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7 www.hanser.de Inhaltsverzeichnis Danksagung...XI Einleitung...XIII

Mehr

Einführung Datenbank

Einführung Datenbank Einführung Datenbank Einführung Datenbank Seite 2 Einführung in die Arbeit mit einer Datenbank Grundbegriffe: Datenbank - Datenbankmanagementsystem Eine Datenbank ist eine systematische strukturierte Sammlung

Mehr

Interaktive Webseiten mit PHP und MySQL

Interaktive Webseiten mit PHP und MySQL Interaktive Webseiten mit PHP und Vorlesung 4: PHP & Sommersemester 2003 Martin Ellermann Heiko Holtkamp Sommersemester 2001 Hier noch ein wenig zu (My)SQL: SHOW INSERT SELECT ORDER BY GROUP BY LIKE /

Mehr

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo. www.mid.de

Innovator 11 excellence. DDL importieren. Data-Definition-Language-Dateien in Datenbankschema importieren. HowTo. www.mid.de Innovator 11 excellence DDL importieren Data-Definition-Language-Dateien in Datenbankschema importieren HowTo www.mid.de Zweck In Innovator Data excellence können Sie mit dem DDL-Import Ihr physisches

Mehr

Dateneingabe über ein HTML-Formular in eine Datenbank:

Dateneingabe über ein HTML-Formular in eine Datenbank: Dateneingabe über ein HTML-Formular in eine Datenbank: Über ein Eingabeformular mit fünf Eingabefelder sollen Personaldaten in eine Datenbank gespeichert werden: Schritt 1: Erstellen des Eingabeformulars

Mehr

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe... php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...7 3.Zugriff auf mysql Daten...11 Verteilte Systeme: php.sxw Prof.

Mehr

Datenmodellierung und Datenbanksysteme. Vorlesung. Informationswissenschaft und Informationssysteme. Hans Uszkoreit & Brigi1e Jörg

Datenmodellierung und Datenbanksysteme. Vorlesung. Informationswissenschaft und Informationssysteme. Hans Uszkoreit & Brigi1e Jörg Vorlesung Informationswissenschaft und Informationssysteme Hans Uszkoreit & Brigi1e Jörg Definitionen Data modeling in software engineering is the process of creating a data model by applying formal data

Mehr

Collax Web Application

Collax Web Application Collax Web Application Howto In diesem Howto wird die Einrichtung des Collax Moduls Web Application auf einem Collax Platform Server anhand der LAMP Anwendung Joomla beschrieben. LAMP steht als Akronym

Mehr