1 Vorwort Einleitung Datenbankentwurf Datenbankdefinition Datensätze einfügen (INSERT INTO)...

Größe: px
Ab Seite anzeigen:

Download "1 Vorwort... 9. 2 Einleitung... 11. 3 Datenbankentwurf... 17. 4 Datenbankdefinition... 33. 5 Datensätze einfügen (INSERT INTO)..."

Transkript

1 Auf einen Blick 1 Vorwort Einleitung Datenbankentwurf Datenbankdefinition Datensätze einfügen (INSERT INTO) Daten abfragen (SELECT) Daten aus mehreren Tabelle abfragen (JOIN) Unterabfragen (Sub-Selects) Datensätze ändern (UPDATE) Datensätze löschen (DELETE FROM) Datensichten Transaktionen Routinen und Trigger Zeichensätze und Lokalisierung Benutzer, Privilegien und Sicherheit Lösungen zu den Aufgaben Beispieldatenbank SQL-Syntax gängiger Datenbanken

2 Inhalt 1 Vorwort 9 2 Einleitung Zielsetzung und Buchaufbau Das durchgehende Datenbankbeispiel Die SQL-Übungen Übungssoftware SQL-Teacher Notationen Datenbankentwurf Was ist SQL? Phasen der Datenbankentwicklung Datenmodell ER-Modell Relationales Datenmodell Primärschlüssel Fremdschlüssel und referenzielle Integrität Optimierung des Datenmodells (Normalisierung) Datenbankdefinition Einführung Tabellen und Datentypen Text Zahlen Zeiten Bits Logische Werte Tabellen anlegen (CREATE TABLE) Integritätsregeln Primärschlüssel (PRIMARY KEY) Fremdschlüssel (FOREIGN KEY) Doppelte Werte verhindern (UNIQUE) Inhalt 5

3 4.4.4 Nur bestimmte Werte zulassen (CHECK) Standardwerte (DEFAULT) Domänen Domänen erstellen (CREATE DOMAIN) Domänendefinition ändern (ALTER DOMAIN) Domänendefinition löschen (DROP DOMAIN) Tabellendefinitionen verändern (ALTER TABLE) Tabellen löschen (DROP TABLE) Indices Was sind Indices? Index bei der Tabellenanlage definieren Index nach Tabellendefinition definieren (CREATE INDEX) Wann sollte ein Index angelegt werden? Index löschen (DROP INDEX) Datensätze einfügen (INSERT INTO) 83 6 Daten abfragen (SELECT) Aufbau des SELECT-Befehls Alle Spalten einer Tabelle ausgeben Spalten auswählen SELECT mit Bedingung (WHERE) Vergleichsoperatoren Ausgabe sortieren (ORDER BY) SELECT mit Gruppenbildung (GROUP BY) Mengenoperationen (UNION, INTERSECT, EXCEPT/MINUS) Funktionen für SELECT-Befehle Aggregatfunktionen Mathematische Funktionen Datumsfunktionen Typumwandlung Zeichenkettenfunktionen NULL-Werte in Abfragen Daten aus mehreren Tabelle abfragen (JOIN) Relationenalgebra Der innere Verbund (INNER JOIN) Varianten des INNER JOIN Der äußere Verbund (LEFT JOIN/RIGHT JOIN) Inhalt

4 8 Unterabfragen (Sub-Selects) Unterabfragen, die eine Zeile zurückgeben Unterabfragen, die mehr als eine Zeile zurückgeben Regeln für die Verwendung von Unterabfragen Datensätze ändern (UPDATE) Unterabfragen in UPDATE-Befehlen Datensätze löschen (DELETE FROM) Unterabfragen in DELETE-Befehlen Datensichten Datensicht erstellen (CREATE VIEW) Verhalten von Datensichten beim Aktualisieren Aktualisieren mit Prüfoption Views ändern und löschen (DROP VIEW) Transaktionen Eigenschaften von Transaktionen Transaktionen mit SQL definieren Isolationsebenen bei Transaktionen Routinen und Trigger Funktionen und Prozeduren Prozeduren und Funktionen löschen Trigger (CREATE TRIGGER) Zeichensätze und Lokalisierung 195 Inhalt 7

5 15 Benutzer, Privilegien und Sicherheit Überblick Benutzer und Rollen Benutzerprivilegien einrichten (GRANT) Benutzerrechte und Views Benutzerprivilegien löschen (REVOKE) Lösungen zu den Aufgaben Beispieldatenbank SQL-Syntax gängiger Datenbanken Die ausgewählten Datenbanken Datentypen Tabellen anlegen, ändern, löschen Domänen anlegen, ändern, löschen Indices anlegen, ändern, löschen Datensätze einfügen, ändern, löschen Daten abfragen (SELECT) Datensichten (VIEWS) Transaktionen Prozeduren/Funktionen/Trigger Benutzer, Privilegien, Sicherheit Index Inhalt

6 1 - Einstieg in SQL - Leseprobe 1 Vorwort Datenbanken bilden die Grundlage nahezu aller Informationssysteme. Und wer Datenbank sagt, muss SQL sprechen. Dieses Buch unterstützt Sie dabei, den Sprachumfang von SQL zu verstehen, und vermittelt Ihnen das»sprachgefühl«, mit dem Sie das Instrumentarium SQL richtig nutzen können. Wenn man alle Datenbanken gleichzeitig abschaltete, würde auch automatisch ein Großteil des wirtschaftlichen Lebens zusammenbrechen. Inzwischen hängen die meisten Wirtschaftsprozesse direkt oder indirekt mit der Speicherung von Informationen in Datenbanken zusammen. Ohne Datenbanken kann man heute praktisch kein Geld vom Geldautomaten abheben, keine Reise buchen und kein Buch bei der Bücherei ausleihen. Offensichtlich wird die Abhängigkeit von Datenbanken im E-Commerce. ebay, Amazon oder Otto-Online funktionieren ohne Datenbanken, in denen praktisch die gesamte Datenhaltung von der Produktinformation bis zur Bestellabwicklung gespeichert wird. Weitaus am häufigsten sind dabei relationale Datenbanken vertreten, deren Grundprinzip es ist, die Daten in Tabellen mit einzelnen Datensätzen und Feldern zu speichern. Die verbreitesten Produkte wie Oracle, DB2 von IBM, der SQL Server von Microsoft und MySQL gehören in diese Kategorie der relationalen Datenbanken. Relationale Datenbanken existieren bereits seit über 20 Jahren. Sie gehören damit zu den Technologien in der Informationstechnologie, die sich dauerhaft durchgesetzt haben. Und alle diese relationalen Datenbanken verwenden mit der Structured Query Language (SQL) eine in großen Teilen standardisierte Sprache zur Speicherung, Abfrage und Veränderung der Informationen, die in der Datenbank gespeichert sind. Wer also SQL beherrscht, ist auch in der Lage, diese heute so wichtige Datenverwaltung zu beherrschen Wer SQL erlernen möchte, hat die Aufgabe vor sich, den Sprachumfang von SQL zu verstehen und anwenden zu können. Im Vergleich zu anderen Programmiersprachen wie Basic, Pascal oder C hat aber SQL einen Vorwort 9

7 geringeren Sprachumfang. Die Hürde, SQL zu beherrschen, ist also geringer als bei Programmiersprachen. Aber wie in anderen Lebensbereichen auch, macht bei SQL auch nur die Übung den Meister. Dieses Buch soll Ihnen eine Hilfestellung sein, SQL zu verstehen, zu üben und anzuwenden. Aus diesem Grund folgen die einzelnen Kapitel folgendem Aufbau: Erläuterung des SQL-Befehls: Im ersten Schritt erfolgt die Erläuterung des SQL-Befehls. Einführendes Beispiel: In einem Einführungsbeispiel können Sie den SQL-Befehl anhand seines praktischen Einsatzes kennenlernen. Syntax des SQL-Befehls: Nachfolgend wird die Syntax des Befehls genauer erläutert. Weiterführende Beispiele: Ein oder mehrere weiterführende Beispiele sollen Ihnen den Umgang mit dem SQL-Befehl weiter erläutern und vertiefen. Übungen: Anhand von Übungsbeispielen können Sie eigenständig die Befehle üben. Damit Sie SQL auch praktisch üben können, liegt diesem Buch eine Übungssoftware bei, die einfach zu installieren ist. Diese Übungssoftware enthält eine komplette SQL-Engine, mit der Sie alle Befehle nachvollziehen, wiederholen und üben können. Bei der SQL-Engine handelt es sich um die Embedded Version von FireBird 1.5. FireBird ist der Open Source-Ableger von Borland InterBase und bietet dadurch zwei Vorteile: Alle Befehle orientieren sich sehr nahe am SQL- Standard, und die Datenbank ist sehr bewährt. 10 Vorwort

8 1 - Einstieg in SQL - Leseprobe 2 Einleitung In diesem Kapitel erhalten Sie einen Überblick über die Inhalte dieses Buches. Dabei wird auch das durchgehende Datenbankbeispiel und die eigens für das Buch entwickelte Übungssoftware SQL-Teacher vorgestellt. 2.1 Zielsetzung und Buchaufbau Dieses Buch ist für Leser gedacht, die den Befehlsumfang von SQL erlernen und üben wollen. Das Buch richtet sich sowohl an Anfänger als auch an Leser mit SQL-Erfahrung. Für den Anfänger sind alle Befehle mit einem einfachen Einführungsbeispiel erläutert, um möglichst schnell den jeweiligen Befehl zu verstehen. Für Leser mit SQL-Erfahrung werden die Inhalte durch weiterführende Beispiele vertieft. Die SQL-Befehle sind in der Reihenfolge Ihrer der Besprechung am Ablauf der Arbeit mit einer Datenbank orientiert. Im ersten Schritt werden die Datenbankgrundlagen erläutert, damit Sie verstehen, wie Datenbanken entworfen und Daten in der Datenbank gespeichert werden. Anschließend lernen Sie die Befehle kennen, um Daten zu speichern oder zu verändern. Die folgenden Kapitel bringen Ihnen die umfangreichen Möglichkeiten nahe, Daten aus der Datenbank zu selektieren. Hier werden vom einfachen Selektionsbefehl bis zu komplexen Join-Abfragen und Unterabfragen alle notwendigen Befehle erklärt und anhand von Beispielen gezeigt. Anschließend folgen die fortgeschrittenen Datenbanktechniken wie Transaktionen, Prozeduren und Trigger. Um Ihnen einen möglichst nahen Praxisbezug zu liefern, haben wir im Anhang einen Syntaxvergleich zwischen den Datenbanken Inter- Base/FireBird, DB2, MySQL, MS Access, MaxDB, Oracle und SQL Server aufgelistet. Sie können so sehr schnell die Inhalte dieses Buches auf entsprechende Datenbanksysteme übertragen Das durchgehende Datenbankbeispiel Um Ihnen den Inhalt dieses Buches möglichst gut zu vermitteln, sind nahezu alle Beispiele und Übungen an einem durchgängigen Datenbankbeispiel erläutert. So können Sie die verschiedenen Befehle und Beispiele leichter nachvollziehen, weil sich diese immer wieder auf die Zielsetzung und Buchaufbau 11

9 gleiche Datenstruktur beziehen. Die Datenbank unseres Buchbeispiels bildet ein Vertriebsunternehmen für Hard- und Software nach. Das Datenmodell sieht dabei wie in Abbildung 2.1 aus. Abbildung 2.1 Datenmodell der Beispieldatenbank Im Überblick verfügt die Beispieldatenbank über folgende Strukturen: In der Tabelle mitarbeiter werden alle relevanten Daten wie Name, Adresse und Kontaktdaten zu den Mitarbeitern gespeichert. Jeder Mitarbeiter gehört einer Abteilung an. Diese Abteilungen geben mit Vertrieb, Support, Rechnungswesen, Einkauf und Verwaltung typische Strukturen eines Unternehmens wieder und sind in der Tabelle abteilung gespeichert. Unser Beispielunternehmen vertreibt Hard- und Software. Diese Artikel werden in der Tabelle artikel gespeichert. Jeder Artikel gehört einer Kategorie an (z.b. Monitor, Scanner etc.). Diese verschiedenen Kategorien werden in der Tabelle kategorie gespeichert. Der Vertrieb erfolgt direkt an Kunden, deren Daten in der Tabelle kunde verwaltet werden. Sobald ein Kunde Artikel bestellt, wird eine entsprechende Bestellung erzeugt. Bestellungen werden einzeln mit Bestelldatum und Bestellnummer in der Tabelle bestellung gespeichert. Jede Bestellung besteht aus einzelnen Bestellungsposten (Tabelle posten), die sich aus Artikeln zusammensetzen (Tabelle artikel). 12 Einleitung

10 1 - Einstieg in SQL - Leseprobe 2.3 Die SQL-Übungen Am Ende eines Kapitels finden Sie Übungsbeispiele. Hier können Sie den Inhalt des jeweiligen Kapitels noch einmal anhand von Fragestellungen wiederholen und insbesondere überprüfen, ob Sie die Befehle auch eigenständig nachvollziehen können. Die Übungen sind so aufgebaut, dass Sie diese mit den Informationen des Kapitels lösen können. Die Lösungen zu den Aufgaben finden Sie in Kapitel Übungssoftware SQL-Teacher Speziell für dieses Buch stellen wir Ihnen mit SQL-Teacher eine Übungssoftware zur Verfügung. Sie können mit dieser Übungssoftware nahezu alle Beispiele und Übungen dieses Buches nachvollziehen. In die Übungssoftware ist eine komplette SQL-Datenbank integriert. Sie haben also so die Möglichkeit, SQL kennen zu lernen, ohne sonst ein Datenbanksystem installiert zu haben. Wenn Sie im Buch am Rand den Hinweis SQL-Teacher sehen, handelt es sich um Schritt-für-Schritt-Beispiele, die Sie mit der Übungssoftware nachvollziehen können. Systemvoraussetzung ist ein Windows-Betriebssystem. Zum Installieren führen Sie bitte das Installationsprogramm aus (sqlteacher_setup.exe) Abbildung 2.2 Die Buchsoftware Die SQL-Übungen 13

11 Die Übungssoftware hat zwei Tab-Reiter im Hauptfenster. Unter Datenbank haben Sie die Möglichkeit, SQL-Befehle einzugeben und auszuprobieren. Sie geben den gewünschten Befehl in das Eingabefenster unter Datenbank ein und führen den Befehl mit STRG+R oder dem entsprechenden Menübutton aus. Im unteren Fenster der rechten Programmseite werden die Ergebnisse des ausgeführten Befehls angezeigt, soweit der Befehl Informationen zurückgibt (z.b. Selektionsbefehle). Über den Button DDL (für Data Definition Language) können Sie sich die Definition der einzelnen Datenbankobjekte (z.b. Tabellen) ansehen. Auf der linken Seite sehen Sie die Datenbankstruktur. Die Beispieldatenbank ist bereits in die Übungssoftware integriert, so dass Sie nahezu alle Beispiele gleich ausprobieren können, ohne Tabellen anlegen und Daten speichern zu müssen. Um Ihnen die Eingabe von SQL-Befehlen zu erleichtern steht ein Abfrage-Assistent zur Verfügung. Sie finden diesen unter dem Tab-Reiter Abfrage-Assistent. Sie ziehen die gewünschten Tabellen mit gedrückter linker Maustaste aus dem linken Menübaum in das Fenster. Sie können anschließend den Selektionsbefehl einfach zusammenbauen. Felder wählen Sie durch Anklicken der Checkbox links neben dem Feldnamen aus. Im unteren Teil des Fensters können Selektionsbedingungen (WHERE), Gruppierungen (GROUP BY) und Sortierungen (ORDER BY) vorgenommen werden. Verknüpfungen zwischen Tabellen erreichen Sie durch Verbinden der Zielfelder mit gedrückter linker Maustaste. Um einen SQL-Befehl auszuführen, klicken Sie auf den Button SQL einfügen. Der Befehl wird dann in das Abfragefenster übernommen. Unter SQL-Erklärungen finden Sie die wichtigsten Befehle und Inhalte des Buches in Kurzform. Sie können also dort schnell nachschlagen, falls Ihnen ein Befehl entfallen ist. Sie können auch Befehle direkt über die Zwischenablage kopieren, dann in den Tab-Reiter Datenbank wechseln, den Befehl dort einfügen und dann ausführen. Die Übungssoftware basiert auf auf dem Embedded FireBird SQL-Server. FireBird ist der Open-Source-Ableger von Borlands InterBase. Fire- Bird gehört zu den Datenbanken, deren SQL-Befehlsumfang nahe am ANSI-SQL-Standard angelehnt ist. Sie haben dadurch mehrere Vorteile: Die Software ist leicht zu installieren. Die aufwändige Installation eines kompletten Datenbankservers entfällt. Die Befehle und Übungen können an einem ausgereiften und marktgängigen Datenbanksystem erlernt und geübt werden. 14 Einleitung

12 1 - Einstieg in SQL - Leseprobe Alle erlernten Inhalte lassen sich leicht auf andere Datenbankserver übertragen Abbildung 2.3 Abfrage-Assistent Wenn Sie weitere Informationen zu FireBird suchen, können Sie unter oder entsprechende Informationen abrufen. Alle Daten der Beispieldatenbank werden in der Datei teacher.gdb im Unterverzeichnis /data des Installationsverzeichnisses gespeichert. Im gleichen Verzeichnis finden Sie eine Kopie der Datenbank mit dem Namen teacher_org.gdb. Falls Sie den ursprünglichen, von uns eingerichteten Datenbestand der Übungsdatenbank wieder herstellen wollen, gehen Sie wie folgt vor: Schließen Sie den SQL-Teacher. Wechseln Sie in das Datenverzeichnis der Übungssoftware (in der Regel c:\programm\sqlteacher\data). Löschen Sie die Datei teacher.gdb. Kopieren Sie die Datei teacher_org.gdb und benennen Sie die Kopie in teacher.gdb um. Starten Sie den SQL-Teacher wieder. Sie haben jetzt den Ausgangsdatenbestand, den wir mitgeliefert haben Übungssoftware SQL-Teacher 15

13 2.5 Notationen Im Folgenden sind die in diesem Buch verwendeten Notationen aufgelistet. tabellenname Bezeichnet eine Tabelle mit variablen Namen. spaltenname Bezeichnet einen Spaltennamen mit variablen Namen. Wenn mehrere Spaltennamen in der Syntax benötigt werden, werden diese mit einem Index versehen, z.b. spaltenname1, spaltenname2 usw. Es handelt sich dann um mehrere verschiedene Spaltennamen. spaltenliste Bezeichnet einen oder mehrere variable Spaltennamen in der Form spaltenname1, spaltenname2, spaltenname3 usw. Während spaltenname nur einen bestimmten Spaltennamen benennt, werden mit spaltenliste in der Regel mehrere aneinander gereihte Spalten, die mit Komma getrennt werden, bezeichnet. [...] Bezeichnet optionale Befehlsbestandteile. { } Bezeichnet alternative Befehlsbestandteile. SQL kennt als Abschluss eines Befehls das Semikolon. 16 Einleitung

14 1 - Einstieg in SQL - Leseprobe SELECT name, vorname, strasse, plz, ort FROM kunde k; SELECT DISTINCT plz FROM kunde; Aliase können nicht nur auf Tabellen, sondern für Spaltennamen verwendet werden. Dies ist praktisch, wenn Sie bei der Ausgabe das Feld umbenennen wollen. Dies wird vor allem dann der Fall sein, wenn Sie Felder bei der Ausgabe durch Funktionen erzeugen. Solche Funktionen werden in Abschnitt 6.6 besprochen. Das folgende Beispiel benennt die Spalte name bei der Ausgabe in Nachname um. SELECT name AS Nachname FROM kunde; Sie können durch die Angabe von DISTINCT identische Zeilen in der Ausgabe zusammenfassen. Zwei Zeilen sind dann identisch, wenn sie in allen Spalten denselben Wert besitzen. Das folgende Beispiel fasst alle gleichen Postleitzahlen aus der Tabelle kunde zusammen: Übungen Fragen Sie aus der Tabelle kunde die Kundennummer (kundennr) und die Zahlungsart (zahlungsart) ab. Listen Sie aus der Tabelle artikel die Bezeichnungen und den Preis aus. Suchen Sie aus der Tabelle mitarbeiter die Namen und die jeweilige Abteilungsnummer heraus. Lassen Sie sich die Namen der Hersteller aus der gleichnamigen Tabelle ausgeben. 6.2 SELECT mit Bedingung (WHERE) Sie werden auch nicht immer alle Datensätze einer Tabelle benötigen. Im Einführungsbeispiel wurden zuerst die Namen und Vornamen aller Kunden angezeigt. Dann haben Sie die Suche auf die Kunden aus Bonn eingeschränkt. Der Befehl bestand zuerst nur aus zwei Zeilen, dem Sie eine weitere hinzugefügt haben. SELECT name, vorname FROM kunde WHERE ort = 'Bonn'; Aliase auf Spaltennamen DISTINCT Übung 6.1 Übung 6.2 Übung 6.3 Übung SELECT mit Bedingung (WHERE) 93

15 SQL-Syntax Die Einschränkungen werden an dritter Stelle aufgelistet. SELECT spaltenliste FROM tabellenname WHERE auswahlbedingungen; Das WHERE ist immer das nächste Element nach FROM. Verschiedene Anforderungen können durch AND beziehungsweise OR verknüpft werden. AND (und) sorgt dafür, dass alle so miteinander verknüpften Anweisungen zutreffen müssen. OR (oder) achtet darauf, dass eine der Bedingungen zutrifft. Eine Bedingung kann mit NOT verneint werden, also wird darauf geachtet, dass sie nicht zutrifft, damit die betreffenden Daten ausgegeben werden. Sie können in der Bedingung auf exakte Übereinstimmung oder auf Mindest- beziehungsweise Höchstwerte prüfen. Dabei verwenden Sie die Vergleichsoperatoren (=, >, < und ihre Kombinationen) oder Funktionen, die in den Abschnitten und 6.6 noch genauer vorgestellt werden. Sie können natürlich auch die Vergleichsoperatoren mit Funktionen kombinieren. Weiterführendes Beispiel Nach weiteren Überlegungen möchte man auch die Kunden in Hamburg erreichen. Die WHERE-Bedingung muss dafür angepasst werden. Um Kunden sowohl aus Hamburg als auch aus Bonn anzuzeigen, werden beide Werte mit OR verknüpft. SELECT name, vorname, strasse, plz, ort FROM kunde WHERE ort = 'Hamburg' OR ort = 'Bonn'; SQL-Teacher Vollziehen Sie das Beispiel in der beiliegenden Datenbank nach. Geben Sie den SELECT-Befehl ein, und führen Sie ihn aus. In der Ausgabe werden die gesuchten Daten aller Kunden, die in Hamburg oder Bonn wohnen, ausgegeben. Da die Firma demnächst 25 Jahre besteht, will die Geschäftsleitung wissen, ob es Kunden gibt, die genauso wie der Firmengründer heißen, um ihnen werbewirksam einen Geschenkgutschein zu übersenden. In diesem Fall werden die Bedingungen nach WHERE mit AND verknüpft, weil sie beide gleichzeitig zutreffen müssen. SELECT name, vorname, strasse, plz, ort FROM kunde WHERE name = 'Kaufmann' AND vorname = 'Andreas'; 94 Daten abfragen (SELECT)

16 1 - Einstieg in SQL - Leseprobe Abbildung 6.6 Die benötigten Kundendaten bei einer Ausdehnung der Werbeaktion von Bonn auf Hamburg Vollziehen Sie das Beispiel in der beiliegenden Datenbank nach. Geben Sie den SELECT-Befehl ein, und führen Sie ihn aus. Ihnen werden die Kunden aufgelistet, bei denen die Bedingung zutrifft. Sie heißen mit Vornamen Andreas und mit Nachnamen Kaufmann. SQL-Teacher Abbildung 6.7 Kunden mit dem Vor- und Familiennamen des Firmengründers SELECT mit Bedingung (WHERE) 95

17 Die Beispielfirma will eine Werbeaktion per starten und dabei nur das regionale begrenzte Angebot eines Kölner Kaufhauses bewerben. Die Selektion der Kunden soll folgendermaßen erfolgen: Es sollen nur Kunden selektiert werden, die über eine gespeicherte -Adresse verfügen. Es sollen alle Kunden selektiert werden, deren Postleitzahl mit 50 beginnt. Um diese Selektion zu bewerkstelligen, muss überprüft werden, ob im Feld ein Eintrag vorhanden ist. Hier könnte man im einfachsten Fall prüfen, ob das Feld einen Eintrag enthält, also NOT NULL ist. Die Selektion der Postleitzahlen erfolgt, indem man die ersten beiden Zeichen der Postleitzahl prüft. Der Befehl lautet hierfür bei FireBird und damit bei unserer Übungsdatenbank STARTING WITH. Man prüft also auf den Beginn der Zeichenkette. Der SQL-Befehl lautet wie folgt: SELECT name, vorname, , strasse, plz, ort FROM kunde WHERE IS NOT NULL AND plz STARTING WITH '50'; SQL-Teacher Vollziehen Sie das Beispiel in der beiliegenden Datenbank nach. Geben Sie den Befehl ein, und führen Sie ihn aus. In der Ausgabe werden die abgefragten Daten aller Kunden mit -Eintrag und einer Postleitzahl, die mit 50 beginnt, aufgeführt. Übungen Übung 6.5 Übung 6.6 Übung 6.7 Übung 6.8 Übung 6.9 Listen Sie alle Artikel der Tabelle artikel auf, deren Nettopreis höher als 100 Euro liegt. Listen Sie alle Mitarbeiter auf, die in der Abteilung 2 beschäftigt sind. Listen Sie alle Artikel auf, die zur Kategorie Grafikkarten (Kategorienummer 3) gehören. Verbinden Sie beide Werbeaktionen der Beispielfirma. Beachten Sie, dass Sie die jeweilige Auswahl in Klammern setzen müssen. Geben Sie alle Kunden aus, deren Kundennummer größer als 50 ist und die nicht in Köln wohnen. 96 Daten abfragen (SELECT)

18 1 Mit LIKE und NOT LIKE vergleichen Sie einen Wert mit einer Vorgabe, in der Sie für Zeichen Platzhalter verwenden. Sie können somit auch Daten selektieren, deren genauen Wert Sie nicht kennen. Die Datenbanksysteme benutzen unterschiedliche Platzhalter. Aus Windows kenwww.galileocomputing.de - Einstieg in SQL - Leseprobe Abbildung 6.8 Die relevanten Daten der Kunden mit -Eintrag und einer Postleitzahl, die mit 50 beginnt Vergleichsoperatoren In der CHECK-Klausel beim Anlegen von Tabellen oder einer Domänendefinition konnten Sie schon Vergleiche durchführen. Vergleichsoperatoren werden Sie auch in Abfragen insbesondere in der WHERE-Bedingung relativ häufig benötigen. Mathematische Operatoren wie gleich (=), größer als (>) und kleiner als (<) mit deren Kombinationen (>= und <=) sowie ungleich (<> oder!=) sind Ihnen wahrscheinlich geläufig. Diese Operatoren können in der WHERE-Bedingung verwendet werden. Wenn Sie z.b. alle Mitarbeiter selektieren wollen, die einen höheren Betrag als 3000 verdienen, lautet der Befehl: SELECT * FROM mitarbeiter WHERE gehalt > 3000; Des weiteren können Sie Vergleiche mit LIKE (ähnlich), IN (in), IS NULL (beinhaltet eine Nullmarke) und BETWEEN (zwischen) durchführen, die mit NOT (nicht) verneint werden können SELECT mit Bedingung (WHERE) 97

19 nen Sie sicher * als Platzhalter für eine beliebig lange Zeichenkette wenn Sie etwa eine Datei suchen, aber nicht den ganzen Namen eingeben wollen. Hier gibt es noch? für genau ein Zeichen. Datenbanken benutzen meist das Prozentzeichen (%) und den Unterstrich (_), so auch die beiliegende Datenbank. Wenn Sie nur Kunden haben wollen, die Meier in allen Variationen heißen, können Sie den betreffenden SELECT-Befehl mit IN ausschreiben, wie Sie es ja schon getan haben. SELECT * FROM kunde WHERE name IN ('Maier', 'Mayer', 'Meier', 'Meyer'); Oder Sie machen es sich etwas kürzer. SELECT * FROM kunde WHERE name LIKE 'M er'; Allerdings würden jetzt auch Herr Maler und Frau Meter aufgenommen. Wenn Sie eine Spalte mit IS NULL oder IS NOT NULL prüfen, können Sie sich die Datensätze ausgeben lassen, die in dieser Spalte keinen bzw. einen Wert enthalten: SELECT * FROM kunde WHERE name IS NOT NULL; Mit BETWEEN und NOT BETWEEN geben Sie zwei Werte an, zwischen denen der untersuchte Wert liegen soll. Wenn Sie alle Mitarbeiter selektieren wollen, die zwischen 2000 und 3000 EUR verdienen, lautet der Befehl SELECT * FROM mitarbeiter WHERE gehalt BETWEEN 2000 AND 3000; Die Bedingung können Sie auch mit > und < aufstellen. SELECT * FROM mitarbeiter WHERE gehalt >= 2000 AND <=3000; BETWEEN können Sie auch auf Zeichenketten anwenden. Um alle Kunden zwischen C und M zu selektieren, würde der folgende Befehl funktionieren: SELECT * FROM kunde WHERE name BETWEEN 'C' AND 'M' ORDER BY name; 98 Daten abfragen (SELECT)

20 1 - Einstieg in SQL - Leseprobe Daneben gibt es die logischen Operatoren AND (und), OR (oder) und NOT (nicht). Mit AND verknüpfte Bedingungen müssen beide erfüllt werden, damit die gesamte Bedingung erfüllt wird. Bei OR muss nur eine der verknüpften Bedingungen erfüllt sein. NOT kehrt den Wert um: Eine erfüllte Bedingung gilt als unerfüllt und umgekehrt. Diese Operatoren werden in der Reihenfolge NOT, AND, OR ausgewertet. Wenn Sie Bedingungen in Klammern setzen, so werden die Klammern zuerst ausgewertet. Die Bedingung NOT name = 'Meier' AND nettopreis > 20 OR produzent = 'Tolle Drucker GmbH' wird also folgendermaßen ausgewertet. Zuerst wird name = 'Meier' verneint, dann mit der Bedingung nettopreis > 20 über AND verknüpft. Diese Bedingung ist als Ganzes nur dann erfüllt, wenn der Name nicht Meier lautet und der Nettopreis über 20 Euro liegt. Diese Bedingung wird durch das OR mit produzent = 'Tolle Drucker GmbH' verbunden. Damit wird die gesamte Bedingung auch dann erfüllt, wenn der Name doch Meier und der Nettopreis unter 20 Euro liegt, aber der Produzent die Tolle Drucker GmbH ist. 6.3 Ausgabe sortieren (ORDER BY) Die Daten wurden bisher in der Reihenfolge ausgegeben, in der sie aus der Tabelle ausgelesen wurden. Durch eine Ergänzung des Befehls können Sie sich die Daten geordnet anzeigen lassen. Die Ordnung entspricht dem Datentyp der betroffenen Zeile. Texte werden alphabetisch ausgegeben, Zahlen der Höhe ihrer Werte nach. In der Regel geht das von A bis Z beziehungsweise vom niedrigsten zum höchsten Wert. Aber die Reihenfolge kann umgekehrt werden. Das folgende Einführungsbeispiel sortiert die Kundenliste alphabetisch nach Nachnamen. SELECT name, vorname FROM kunde ORDER BY name; Um eine geordnete Ausgabe zu erreichen, wird an das Ende des SELECT-Befehls das Element ORDER BY gehängt. Einführungsbeispiel SQL-Syntax Ausgabe sortieren (ORDER BY) 99

21 1 - Einstieg in SQL - Leseprobe 8 Unterabfragen (Sub-Selects) Unterabfragen bieten die Möglichkeit, in einer Abfrage direkt die Ergebnisse einer anderen Abfrage zu verwenden. Welche Arten von Unterabfragen es gibt und wie sie eingesetzt werden können, zeigt dieses Kapitel. Das folgende Beispiel zeigt das Grundprinzip von Unterabfragen. Wenn Sie z.b. auf Basis der Tabelle mit den Bestellinformationen wissen möchten, welcher Kunde die Bestellung mit dem höchsten Wert aufweist, können Sie folgenden Befehl verwenden: SELECT kundennr, bestelldatum, rechnungsbetrag FROM bestellung WHERE rechnungsbetrag = ( SELECT max(rechnungsbetrag) FROM bestellung ); Sie sehen anhand dieses Beispiels, dass die Unterabfrage einen Wert für den Vergleichsoperator innerhalb der WHERE-Bedingung liefert. Um diesen Wert zu liefern, wird wiederum eine SELECT-Abfrage formuliert, die den bekannten Regeln folgt. Wenn Sie das Beispiel in der Übungssoftware ausführen, erfahren Sie, dass der Kunde mit der Nummer 63 am 25. Januar 2004 mit 4.235,97 Euro die Bestellung mit dem höchsten Wert getätigt hat (siehe Abbildung 8.1). In unserem Einführungsbeispiel wurde eine Unterabfrage formuliert, die genau einen Wert zurückgibt. Sie erhalten als Ergebnis den Datensatz mit dem höchsten Rechnungsbetrag aus der Tabelle bestellungen. Es ist nicht möglich, dieses Ergebnis über eine einfache Abfrage zu erhalten, weil die Aggregatfunktion max(rechnungsbetrag) die Angabe weiterer Felder nur dann zulässt, wenn eine entsprechende Gruppierung für diese Spalten vorhanden ist. Deshalb wird der SQL-Befehl Unter Unterabfragen, häufig auch als Sub-Selects oder Sub-Querys bezeichnet, versteht man die Möglichkeit, innerhalb eines Befehls das Ergebnis einer Abfrage unmittelbar in einer anderen Anweisung zu verwenden. Unterabfragen kommen also immer dann zur Anwendung, wenn eine Abfrage auf das Ergebnis einer anderen Abfrage zurückgreift. Einführungsbeispiel

22 SELECT max(rechnungsbetrag), kundennr, bestelldatum, rechnungsbetrag FROM bestellung; als ungültiger Befehl abgelehnt. Die Ergänzung um eine GROUP BY- Klausel macht daraus einen gültigen Befehl, allerdings werden jetzt aufgrund der Gruppierung alle Datensätze ausgegeben, was natürlich nicht das gewünschte Ergebnis darstellt. SELECT max(rechnungsbetrag), kundennr, bestelldatum, rechnungsbetrag FROM bestellung GROUP BY kundennr, bestelldatum, rechnungsbetrag; Abbildung 8.1 Ausführung einer Unterabfrage Die Einschränkung der Datensätze durch die WHERE-Bedingung erfolgt auf Basis einer SELECT-Abfrage, die den entsprechenden Wert bzw. entsprechende Werte für die Einschränkung liefert. Da der Wert für ein bestimmtes Feld geliefert wird, muss natürlich der Rückgabewert logisch zum Selektionskriterium passen. In diesem Fall wird der maximale Rechnungsbetrag zurückgegeben. Eine Unterabfrage ist im Übrigen relativ schnell zu erkennen, weil die gesamte Unterabfrage mit einer Klammer versehen wird und sich damit z.b. von einem Join auch schon optisch unterscheidet.

23 Der grundsätzliche Aufbau von Unterabfragen kann wie folgt definiert werden: SELECT spaltenliste FROM tabellenname WHERE spaltenname Vergleichsoperator ( SELECT abfrage ); Oft kann man Unterabfragen auch als Join formulieren. Wird zusätzlich eine Programmiersprache verwendet, mit der Ergebnisse von SQL-Befehlen gespeichert werden können, ist es natürlich auch möglich, das Ergebnis einer Abfrage zwischenzuspeichern und in der nächsten Abfrage zu verwenden. Da die Unterabfrage Werte für die Hauptabfrage liefert, können grundsätzlich folgende Varianten unterschieden werden: Unterabfragen, die einen Wert (Zeile) zurückgeben Unterabfragen, die mehrere Werte (Zeilen) zurückgeben Je nach Formulierung der Unterabfrage kann dann noch unterschieden werden, ob die Unterabfrage eigenständig ausgeführt werden kann oder nicht. Als korrelierte Unterabfragen werden dabei Unterabfragen verstanden, die nicht unabhängig von der Hauptabfrage ausgeführt werden können. Unterabfragen lassen sich nicht nur in SELECT-Abfragen verwenden, sondern genauso gut in DELETE-, UPDATE- und INSERT-Anweisungen. Im weiteren Verlauf des Buches finden Sie hierzu entsprechende Beispiele. 8.1 Unterabfragen, die eine Zeile zurückgeben Das oben gezeigte Einführungsbeispiel gehört zu dieser Gruppe der Unterabfragen, die nur einen Wert zurückgeben. Ein anderes Beispiel ist die Selektion eines bestimmten Datensatzes über den Primärschlüssel:»Zeige mir den Kunden mit der Kundennummer 56«. Dabei gelten folgende Bedingungen: Das Ergebnis der Unterabfrage gibt genau einen Wert zurück. Die Unterabfrage gibt genau eine Spalte (Feld) zurück. Diese Art der Unterabfrage erzeugt also nichts anderes als einen Selektionswert für die Hauptabfrage. Aus diesem Grund arbeitet man bei SQL-Syntax Unterabfragen, die eine Zeile zurückgeben 143

24 dieser Art der Unterabfragen auch mit den bekannten Vergleichsoperatoren wie =, >, >=, < oder <=. Weiterführende Beispiele Das folgende Beispiel gibt einen Kunden zurück, der einer definierten Rechnungsnummer zugeordnet wird. SELECT name FROM kunde WHERE kundennr = ( SELECT kundennr FROM bestellung WHERE bestellnr = 10 ); Das Ergebnis dieser Abfrage sieht dann wie in Abbildung 8.2 aus. Abbildung 8.2 Unterabfrage, die eine Zeile zurückgibt Unterabfragen, die eine Zeile zurückgeben, können, wie bereits erwähnt, häufig auch über normale Joins formuliert werden. In diesem Beispiel kann diese Abfrage auch wie folgt definiert werden: SELECT name FROM kunde INNER JOIN bestellung ON kunde.kundennr = bestellung.kundennr WHERE bestellung.bestellnr = 10; Ob Sie besser eine Unterabfrage oder ein Join verwenden, ist dabei nicht mit einer Empfehlung zu versehen. Im Zweifel sollte der Befehl 144 Unterabfragen (Sub-Selects)

25 1 - Einstieg in SQL - Leseprobe verwendet werden, der die bessere Ausführungsgeschwindigkeit aufweist, was unter Umständen nur mit Analysetools des jeweiligen Datenbanksystems zu beantworten ist. Unterabfragen, die einen Wert liefern, sind insbesondere bei Fragestellungen, die berechnete Aggregatfunktionen (MAX, AVG) benötigen, interessant. Hierzu einige Beispiele. Im Folgenden werden alle Bestellungen aufgelistet, die einen überdurchschnittlichen Rechnungsbetrag haben: SELECT bestellnr FROM bestellung WHERE rechnungsbetrag > ( SELECT AVG(rechnungsbetrag) FROM bestellung ); Beispiele Abbildung 8.3 Ausgabe auf Basis des Vergleichs mit einem Mittelwert Falls Sie den durchschnittlichen Rechnungsbetrag ermitteln wollen, können Sie dies mit der alleinigen Ausführung der Unterabfrage tun. SELECT AVG(rechnungsbetrag) FROM bestellung; Ein anderes Beispiel ist die Suche nach dem neuesten Mitarbeiter. Hier suchen wir über den größten Datumswert Unterabfragen, die eine Zeile zurückgeben 145

26 SELECT name,vorname FROM mitarbeiter WHERE eintrittsdatum = ( SELECT MAX(eintrittsdatum) FROM mitarbeiter ); So kann auch der Mitarbeiter gesucht werden, der zuerst angelegt wurde. Hier wird dann statt der Funktion max() die Funktion min() auf das Anlegedatum verwendet. SELECT name,vorname FROM mitarbeiter WHERE eintrittsdatum = ( SELECT MIN(eintrittsdatum) FROM mitarbeiter ); 8.2 Unterabfragen, die mehr als eine Zeile zurückgeben Eine Unterabfrage kann aber auch mehr als eine Zeile zurückgeben. Ein Beispiel hierfür ist die Selektion aller Bestellungen eines bestimmten Kunden. Wenn eine Unterabfrage mehrere Zeilen zurückgibt, ist der Einsatz von Mengenoperatoren notwendig, weil hier jetzt nicht mehr mit einem Wert verglichen wird, sondern mit allen Werten, die durch die Unterabfrage zurückgegeben werden. Weiterführendes Beispiel Sie haben eine Gehaltstabelle von Mitarbeitern und wollen wissen, ob jemand weniger verdient als derjenige Mitarbeiter mit dem geringsten Gehalt der Abteilung Vertrieb (Abteilung = 5). Der Befehl hierfür lautet dann: SELECT name, gehalt, abteilung FROM mitarbeiter WHERE gehalt < ALL ( SELECT gehalt FROM mitarbeiter WHERE abteilung = 5 ); Die Unterabfrage gibt alle Gehälter der Mitarbeiter der Abteilung Vertrieb aus. Der Mengenoperator ALL vergleicht dann, ob die Bedingung auf alle Zeilen der Unterabfrage zutrifft. In diesem Fall wird geprüft, ob ein Datensatz, der nicht die Abteilung 5 als Attribut trägt, kleiner als jeder Datensatz der Unterabfrage ist. 146 Unterabfragen (Sub-Selects)

27 1 - Einstieg in SQL - Leseprobe Als Ergebnis erhalten Sie in der Übungssoftware fünf Mitarbeiter (siehe Abbildung 8.4) Abbildung 8.4 Unterabfrage mit dem Vergleichsoperator < ALL Folgende Mengenoperatoren sind für Unterabfragen, die mehr als einen Datensatz zurückgeben, gültig Mengenoperator vo ALL Beschreibung Prüft, ob die angegebene Bedingung auf alle Datensätze der Unterabfrage zutrifft. ALL wird immer mit einem Vergleichsoperator vo wie >, < >= oder <= verwendet. Mengenoperatoren vo ANY Prüft, ob die angegebene Bedingung auf irgendeinen Datensatz der Unterabfrage zutrifft. ANY wird immer mit einem Vergleichsoperator vo wie >, < >= oder <= verwendet. 16 IN Prüft, ob ein Wert in dem Ergebnis der Unterabfrage enthalten ist. 17 EXISTS Prüft, ob die Bedingung auf mindestens einen Datensatz der Unterabfrage zutrifft, also mindestens ein Datensatz selektiert wird. Rückgabe ist TRUE oder FALSE. 18 Anhand von Beispielen werden im Folgenden die verschiedenen Mengenoperatoren besprochen. Unterabfragen, die mehr als eine Zeile zurückgeben 147

28 ALL Der ALL-Operator wird verwendet, wenn eine Bedingung auf alle Zeilen der Unterabfrage passen soll. Sie suchen z.b. alle Mitarbeiter, die länger dem Unternehmen angehören als der dienstälteste Mitarbeiter der Abteilung Vertrieb (Abteilung = 5). Der Befehl hierfür lautet: SELECT name, eintrittsdatum, abteilung FROM mitarbeiter WHERE eintrittsdatum < ALL ( SELECT eintrittsdatum FROM mitarbeiter WHERE abteilung = 5 ); Die Unterabfrage liefert hier eine Ergebnisliste mit allen Eintrittsdaten der Mitarbeiter der Vertriebsabteilung. In der Hauptabfrage werden alle Datensätze ausgegeben, deren Eintrittsdatum kleiner als alle (ALL) Datensätze der Unterabfrage sind. Im Ergebnis sieht diese Abfrage wie in Abbildung 8.5 gezeigt aus. Abbildung 8.5 Der ALL-Operator in Unterabfragen Natürlich kann es vorkommen, dass die Unterabfrage keinen Wert liefert, also leer ist. In diesem Fall kann die Hauptabfrage nicht erfüllt werden, liefert also falsch zurück. 148 Unterabfragen (Sub-Selects)

29 Während der Operator ALL bewirkt hat, dass mit allen selektierten Datensätzen der Unterabfrage verglichen wurde, muss bei ANY nur irgendein Datensatz der Unterabfrage mit der Bedingung für die Hauptabfrage gültig sein. Während bei ALL der Vergleich nach dem größten Wert vorgenommen wurde, lautet bei ANY die Fragestellung, welcher Wert der Hauptabfrage größer als ein beliebiger Wert der Unterabfrage ist. Auf das oben gezeigte Gehaltsbeispiel bezogen würde ANY bewirken, dass alle Personen gesucht werden, die weniger verdienen als der höchste Wert der Unterabfrage. SELECT name, gehalt, abteilung FROM mitarbeiter WHERE gehalt < ANY ( SELECT gehalt FROM mitarbeiter WHERE abteilung=5 ); Während bei ANY und ALL mit Vergleichsoperatoren gearbeitet wurde, also Werte, die größer und kleiner als Vergleichswerte aus der Unterabfrage waren, prüft IN auf Übereinstimmung mit dem Ergebnis der Unterabfrage. In der Übungsdatenbank existiert zu der Mitarbeitertabelle noch eine Tabelle, in der gespeichert wird, ob der Mitarbeiter ein Jobticket besitzt. Sie wollen nun wissen, welcher der Mitarbeiter auch ein gültiges Jobticket besitzt. Die Abfrage hierfür lautet dann wie folgt: SELECT name FROM mitarbeiter WHERE mitarbeiternr IN ( SELECT mitarbeiternr FROM jobticket WHERE gueltig_bis > CURRENT_DATE ); Natürlich kann auch mit NOT geprüft werden, ob keine Übereinstimmung mit der Unterabfrage besteht. Wenn Sie also wissen wollen, wer noch kein Jobticket hat, lautet die Abfrage: SELECT name FROM mitarbeiter WHERE mitarbeiternr NOT IN ( SELECT mitarbeiternr FROM jobticket WHERE gueltig_bis > CURRENT_DATE ); ANY IN Unterabfragen, die mehr als eine Zeile zurückgeben 149

30 Auch an diesem Beispiel lässt sich zeigen, dass man Unterabfragen auch als Joins definieren kann. Die Frage, wer noch kein Jobticket besitzt, könnte auch über folgende Abfrage beantwortet werden: SELECT m.name FROM mitarbeiter m INNER JOIN jobticket j ON m.mitarbeiternr = j.mitarbeiternr WHERE j.gueltig_bis > CURRENT_DATE; An dieser Stelle sei noch einmal angemerkt, dass FireBird/InterBase im Gegensatz zu den meisten anderen Datenbanken kein AS für die Benennung von Aliasen verlangt. EXISTS Während IN geprüft hat, ob ein identischer Vergleichswert für die Hauptabfrage in der Unterabfrage vorhanden ist, und dann auf dieser Basis Datensätze auswählt, prüft EXISTS generell nur, ob ein gültiger Wert in der Unterabfrage für die formulierte Abfrage existiert. Bei EXISTS stellt deshalb keine Vergleichsspalte die Verbindung zwischen Haupt- und Unterabfrage her. Das folgende Beispiel beantwortet die Frage, welche Mitarbeiter aus der Tabelle mitarbeiter auch in der Tabelle jobticket vorhanden sind. SELECT name, abteilung FROM mitarbeiter WHERE EXISTS (SELECT * FROM jobticket WHERE mitarbeiter.mitarbeiternr = jobticket.mitarbeiternr ); Da EXISTS nur prüft, ob ein gültiger Vergleichswert in der Unterabfrage vorhanden ist, ist zwingend notwendig, über mitarbeiter.mitarbeiternr = jobticket.mitarbeiternr die Ausgabe auf korrespondierende Datensätze einzuschränken. Andernfalls würden alle Datensätze ausgegeben werden, weil bereits ein Eintrag in der Tabelle jobticket die Unterabfrage auf gültig setzt und damit dann alle Datensätze der Hauptabfrage ausgibt. Sie können auch hier den Operator NOT verwenden. Wenn Sie also wissen möchten, welche Mitarbeiter kein Jobticket besitzen, lautet die Abfrage: SELECT name, abteilung FROM mitarbeiter 150 Unterabfragen (Sub-Selects)

31 WHERE NOT EXISTS ( SELECT * FROM jobticket WHERE mitarbeiter.mitarbeiternr = jobticket.mitarbeiternr ); Sie können grundsätzlich auch mehr als eine Unterabfrage in einer Abfrage verwenden. Das weiter oben gezeigte Beispiel der Selektion von überdurchschnittlichen Rechnungsbeträgen, die höher als der Durchschnitt sind, könnte so auch z.b. um die Selektion aller Kunden erweitert werden, die in Hamburg wohnen. SELECT bestellnr FROM bestellung WHERE rechnungsbetrag > ( SELECT AVG(rechnungsbetrag) FROM bestellung ) AND kundennr IN ( SELECT kundennr FROM kunde WHERE ort = 'Hamburg' ); Übungen Geben Sie Bestelldatum und Kundennummer für die Bestellung mit dem höchsten Rechnungsbetrag aus, der jemals gestellt wurde. Aus der Übungsdatenbank sollen alle Bestellungen der Kunden aus Hamburg ausgegeben werden. Formulieren Sie einen SELECT-Befehl mit einer Unterabfrage. Ermitteln Sie alle Mitarbeiter, denen ein überdurchschnittliches Gehalt im Vergleich zum Unternehmensdurchschnitt gezahlt wird. 8.3 Regeln für die Verwendung von Unterabfragen Zusammenfassend werden hier noch einmal die Regeln für die Verwendung von Unterabfragen aufgeführt: Eine Unterabfrage wird als rechtsseitiger Ausdruck als Vergleich oder EXISTS-Bedingung eingesetzt. Die Unterabfrage ist in Klammern zu setzen. Übung 8.1 Übung 8.2 Übung Regeln für die Verwendung von Unterabfragen 151

32 Wenn die Unterabfrage einen Datensatz als Ergebnis liefert, kann diese mit den Vergleichsoperatoren >, <, =, <= und >= eingeleitet werden. Ob nur ein Datensatz aus der Unterabfrage hervorgeht, ist unter Umständen durch die Formulierung des Befehls festzulegen. Liefert die Unterabfrage mehr als einen Datensatz, können keine Vergleichsoperatoren mehr eingesetzt werden. Hierfür stehen dann die Mengenoperatoren ALL, ANY, IN und EXISTS zur Verfügung. ORDER BY ist innerhalb einer Unterabfrage nicht zulässig. Innerhalb der Unterabfrage ist UNION nicht zulässig. 152 Unterabfragen (Sub-Selects)

33 Index A Abfrage s. SELECT Abhängige Tabelle 50 ABS() 120, 256 Absoluter Wert 120 ACID 177 ADD CONSTRAINT 74 Aggregatfunktionen 113 Aktualisierung 171, 172 Aktualisierungsvorgänge 46, 52 Alias 115 Spaltenalias 93 Tabellenalias 92 ALTER 74 ALTER DOMAIN 68, 249 ADD 70 ADD CHECK 69 DROP CONSTRAINT 69 DROP DEFAULT 69 SET 69 ALTER INDEX 250 ALTER TABLE 72, 73, 246 ADD 74 ALTER 74 DROP 74 MODIFY 74 AND 99 AS 114 ASC 100 Atomicity 177 AUTOCOMMIT 179 Autoinkrement 47, 246 AVG() 115, 256 B BEGIN 190, 259 Benutzer 201, 202 Benutzerrechte 203, 206, 264 BETWEEN 97 Beziehung 1 zu zu n 22 n zu m 22 Beziehungstypen 22 BINARY(n) 241 BIT VARYING(n) 43, 241 BIT(n) 43, 241 BLOB 44, 241 BOOLEAN 44, 242 C CASE-Tool 21 CAST() 124, 132, 256 CHAR(n) 37, 240 CHAR_LENGTH() 121, 256 CHARACTER LARGE OBJECT(n) 39, 240 CHARACTER SET 197 CHARACTER VARYING(n) 37 CHARACTER(n) 37, 240 CHARACTER_LENGTH() 121, 256 CHECK 57, 63 CLOB 240, 241 COLLATE 197 COMMIT 177, 178, 179, 180, 182, 232, 259 Condition Join 135 Consistency 177 Constraint 74 CONTAINING 67 COUNT() 104, 115, 256 CREATE DATABASE 231 CREATE DOMAIN 65, 248 CREATE FUNCTION 188 CREATE INDEX 80, 249 CREATE PROCEDURE 185, 188 CREATE ROLE 202 CREATE TABLE 242 Syntax 45 CREATE TRIGGER 190 CREATE VIEW 258 Syntax 167 WITH CHECK OPTION 171 CURRENCY 240 CURRENT_DATE() 62, 123, 257 CURRENT_TIME() 123, 257 CURRENT_TIMESTAMP() 123, 257 D Data Definition Language s. DDL DATE 41, 241 Datenbankadministrator 201 Index 267

34 Datenbankentwurf 20 Datenbankkonsistenz siehe auch Referenzielle Integrietät 185 Datenbankmanagementsystem 20 Datendefinitionssprache s. DDL Datenmanipulationssprache s. DML Datenmodell 20 objektorientiertes 21 relationales 21 Datensicht s. View Datentyp BINARY(n) 241 BIT VARYING(n) 241 BIT(n) 43, 241 BLOB 44, 241 BOOLEAN 44, 242 CHARACTER LARGE OBJECT(n) 39, 240 CHARACTER VARYING(n) 37, 240 CHARACTER(n) 37, 240 CLOB 240, 241 CURRENCY 240 DATE 41, 241 DATETIME 241 DECIMAL(n, m) 41, 240 DOUBLE PRECISION 41, 240 FIXED(n, m) 240 FLOAT(n) 41, 240 IMAGE 241 INTEGER 40, 240 INTERVAL DAY 43 INTERVAL DAY TO HOUR 43 INTERVAL DAY TO MINUTE 43 INTERVAL MINUTE TO SECOND 43 INTERVAL YEAR 42 INTERVAL YEAR TO MONTH 42 LONG 240 LONGBLOB 241 LONGTEXT 240 MEDIUMBLOB 241 MEDIUMTEXT 240 MEMO 240 NATIONAL CHARACTER VARYING(n) 38, 240 NATIONAL CHARACTER(n) 38, 240 NCHAR VARYING(n) 240 NCHAR(n) 240 NTEXT 240 NUMERIC(n, m) 40, 240 NVARCHAR(n) 240 REAL 41, 240 SINGLE 240 SMALLDATETIME 241 SMALLINTEGER 40, 240 TEXT 240 TIME 42, 241 TIME(n) WITH TIME ZONE 42 TIMESTAMP 42, 241 TIMESTAMP(n) WITH TIME ZONE 42 TINYBLOB 241 VARBINARY(n) 241 VARCHAR(n) 37, 240 DATETIME 241 Datumsfunktionen 113, 257 DAY() 256 DB2 239 DBMS s. Datenbankmanagementsystem DDL 17, 20 DECIMAL(n, m) 41 DEFAULT 62 DELETE 143, 159, 202, 205, 207, 232, 252 DESC 100 Dirty Read 180 DISTINCT 93, 253 DML 17, 20 Domäne 63 DOUBLE PRECISION 41 DROP 77 DROP CONSTRAINT 74 DROP DOMAIN 70, 249 DROP INDEX 82, 250 DROP TABLE 76, 248 DROP TRIGGER 194 DROP VIEW 172, 259 CASCADE 172 RESTRICT 172 Dubletten 111 Durability 177 E END 190 Entität 21 Entitätstyp Index

35 Entity-Relationship-Modell s. ER- Modell ER-Modell 22 EXCEPT 109, 255 EXISTS 147 EXTRACT() 121, 256 F FIXED(n, m) 240 Fließkommazahl 41 FLOAT 41, 240 FOREIGN KEY 49 CASCADE 52 DEFAULT 52 Definition 24 NO ACTION 52 SET NULL 52 Fremdschlüssel s. FOREIGN KEY G GETDATE() 257 GETUTCDATE() 257 GRANT 203, 264 Greenwich Mean Time 42 GROUP BY 104, 105 Gruppierung s. GROUP BY H HAVING 106 HOUR() 256 I IMAGE 241 IN 97 INDEX 78 Inner Join 132 INSERT INTO 83, 251 INSTR() 256 INTEGER 40, 240 InterBase 239 INTERSECT 109, 255 INTERVAL DAY 43 INTERVAL DAY TO HOUR 43 INTERVAL DAY TO MINUTE 43 INTERVAL MINUTE TO SECOND 43 INTERVAL YEAR 42 INTERVAL YEAR TO MONTH 42 IS NOT NULL 98 IS NULL 97 ISO Isolation 177 Isolationsebene 182 Isolationsphänome 180 J JOIN Column Name Join 135 Cross Join 137 FULL OUTER JOIN 138 INNER JOIN 133 LEFT JOIN 138 Natural Join 136 Old style 129 Outer Join 138 RIGHT JOIN 138 Self Join 136 K Korrelierte Unterabfrage 143 Kreuzprodukt s. Cross Join L LEN() 256 LENGTH() 256 LIKE 97 LOCATE() 256 LONG 240 LONGBLOB 241 LONGTEXT 240 Lost Update 180 LTRIM() 258 M Mathematische Funktionen 113 MAX() 115, 256 MEDIUMBLOB 241 MEDIUMTEXT 240 Mehrbenutzerbetrieb 175, 183 Mehrfelderschlüssel 47 MEMO 240 MID() 258 MIN() 116, 256 MINUS 109, 255 MINUTE() 256 MOD() 119, 122, 256 MODIFY 74 Index 269

36 MONTH() 256 MS Access 239 Multi-Column-Index 79, 80 MySQL 239 N NATIONAL CHARACTER VARYING(n) 38 NATIONAL CHARACTER(n) 38, 240 NCHAR VARYING(n) 240 NCHAR(n) 240 Non-repeatable Read 181 Normalform 27 Normalisierung 26 NOT 97, 99 NOT BETWEEN 98 NOT LIKE 97 NOT NULL 46 NOW() 257 NTEXT 240 NULL 127 Nullmarken 127 NUMERIC(n, m) 40, 240 NVARCHAR(n) 240 O ON DELETE 52, 242 ON UPDATE 53, 242 Operatoren Arithmetische Operatoren 18 Logische Operatoren 18 Vergleichsoperatoren 18 Verknüpfungsoperatoren 19 OR 99 Oracle 239 ORDER BY 99 OVERLAY() 125 P Phantom 181 Platzhalter 97 POSITION() 122, 256 Primärschlüssel 24, 46, 47, 49 PRIMARY KEY s. Primärschlüssel Privilegien s. GRANT R Read Uncommited 182 REAL 41, 240 Referenzielle Integrität CASCADE 25 Definition 25 SET NULL 26 Relation, Definition 23 Relationales Datenmodell 23 Relationenalgebra 132 Reverse engineering 21 REVOKE 206, 264 ROLLBACK 177, 259 Rolle 202 RTRIM() 258 S SAPDB 239 Schlüssel 22 SECOND() 256 SELECT 87, 89, 253 Alle Spalten ausgeben 90 Spalten auswählen 91 SET 154 SINGLE 240 SMALLDATETIME 241 SMALLINTEGER 40, 240 SQL Server 239 Standardwert 61, 62 Sub-Selects s. Unterabfragen SUBSTR() 258 SUBSTRING() 125, 258 SUM() 115, 256 SYSDATE() 257 T Tabelle 17 TEXT 240 TIME 42, 241 TIME(n) WITH TIME ZONE 42 TIMESTAMP(n) 42 TIMESTAMP(n) WITH TIME ZONE 42 TINYBLOB 241 Transaktion Definition 175 Trigger 189 TRIM() 126, 258 Tupel Index

37 U UDF 185, 261 Unicode 196 UNION 108, 255 UNION ALL 111 UNIQUE 56 Unterabfragen ALL 148 ANY 149 EXISTS 150 IN 149 in DELETE-Befehlen 162 in UPDATE-Befehlen 156 Join als Alternative 144, 150 korrelierte 143 Mengenoperatoren 147 mit einem Wert 143 mit mehreren Werten 146 UPDATE 153, 154, 251 UPPER() 126, 257 Use Case 20 USING 135 V VALUE 67 VARBINARY(n) 241 VARCHAR(n) 37, 240 Vatertabelle 50 Vergleichsoperatoren 97 View 167 Read-only 170 W WHERE 94 Y YEAR() 256 Z Zeichenkettenfunktionen 113 Zeichenverkettung 125, 257 Zusammengesetzter Index 79 Index 271

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198 Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT INTO) 95 5 Daten abfragen (SELECT) 99 6 Daten aus mehreren Tabellen abfragen (JOIN) 143 7 Unterabfragen

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

Auf einen Blick. 1 Einleitung... 15. 2 Datenbankentwurf... 23. 3 Datenbankdefinition... 43. 4 Datensätze einfügen (INSERT INTO)...

Auf einen Blick. 1 Einleitung... 15. 2 Datenbankentwurf... 23. 3 Datenbankdefinition... 43. 4 Datensätze einfügen (INSERT INTO)... Auf einen Blick 1 Einleitung... 15 2 Datenbankentwurf... 23 3 Datenbankdefinition... 43 4 Datensätze einfügen (INSERT INTO)... 95 5 Daten abfragen (SELECT)... 99 6 Daten aus mehreren Tabellen abfragen

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

Marcus Throll, Oliver Bartosch. Einstieg in SQL. Verstehen, einsetzen, nachschlagen. Galileo Press

Marcus Throll, Oliver Bartosch. Einstieg in SQL. Verstehen, einsetzen, nachschlagen. Galileo Press Marcus Throll, Oliver Bartosch Einstieg in SQL Verstehen, einsetzen, nachschlagen Galileo Press Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT

Mehr

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Datenbanken 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,

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

Marcus Throll, Oliver Bartosch. Einstieg in SQL. Verstehen, einsetzen, nachschlagen

Marcus Throll, Oliver Bartosch. Einstieg in SQL. Verstehen, einsetzen, nachschlagen Marcus Throll, Oliver Bartosch Einstieg in SQL Verstehen, einsetzen, nachschlagen Auf einen Blick 1 Einleitung... 13 2 Datenbankentwurf... 21 3 Datenbankdefinition... 39 4 Datensätze einfügen (INSERT INTO)...

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

Details zu den Ausdrücken nach FROM, WHERE, GROUP BY und HAVING finden Sie in den Abschnitten über JOIN, WHERE und GROUP BY.

Details zu den Ausdrücken nach FROM, WHERE, GROUP BY und HAVING finden Sie in den Abschnitten über JOIN, WHERE und GROUP BY. SELECT - Der Grundbefehl zur Auswahl von Daten Die SELECT-Anweisung fragt Daten aus einer Datenbank ab und stellt diese in einer virtuellen Tabelle zur Verfügung. Diese virtuelle Tabelle, eine Menge von

Mehr

Datenbanken Kapitel 2

Datenbanken Kapitel 2 Datenbanken Kapitel 2 1 Eine existierende Datenbank öffnen Eine Datenbank, die mit Microsoft Access erschaffen wurde, kann mit dem gleichen Programm auch wieder geladen werden: Die einfachste Methode ist,

Mehr

Access [basics] Gruppierungen in Abfragen. Beispieldatenbank. Abfragen gruppieren. Artikel pro Kategorie zählen

Access [basics] Gruppierungen in Abfragen. Beispieldatenbank. Abfragen gruppieren. Artikel pro Kategorie zählen Abfragen lassen sich längst nicht nur dazu benutzen, die gewünschten Felder oder Datensätze einer oder mehrerer Tabellen darzustellen. Sie können Daten auch nach bestimmten Kriterien zu Gruppen zusammenfassen

Mehr

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de 08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren

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

SQL - Übungen Bearbeitung der Datenbank Personal (1)

SQL - Übungen Bearbeitung der Datenbank Personal (1) Bearbeitung der Datenbank Personal (1) 1. Abfragen einer einzigen Tabelle 1.1. Zeigen Sie alle Informationen an, die über die Kinder der Mitarbeiter gespeichert sind. 1.2. Zeigen Sie aus der Tabelle stelle

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

4. BEZIEHUNGEN ZWISCHEN TABELLEN

4. BEZIEHUNGEN ZWISCHEN TABELLEN 4. BEZIEHUNGEN ZWISCHEN TABELLEN Zwischen Tabellen können in MS Access Beziehungen bestehen. Durch das Verwenden von Tabellen, die zueinander in Beziehung stehen, können Sie Folgendes erreichen: Die Größe

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

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

Access 2000 und MS SQL Server im Teamwork

Access 2000 und MS SQL Server im Teamwork Access 2000 und MS SQL Server im Teamwork von Irene Bauder, Jürgen Bär 1. Auflage Hanser München 2000 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 21473 6 Zu Inhaltsverzeichnis schnell und

Mehr

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken. In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access Die Grundlagen der Datenbanken kurspc15 Inhaltsverzeichnis Access... Fehler! Textmarke nicht

Mehr

Datenbanken Microsoft Access 2010

Datenbanken Microsoft Access 2010 Datenbanken Microsoft Access 2010 Abfragen Mithilfe von Abfragen kann ich bestimmte Informationen aus einer/mehrerer Tabellen auswählen und nur diese anzeigen lassen die Daten einer/mehrerer Tabellen sortieren

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Datenexport aus JS - Software

Datenexport aus JS - Software Datenexport aus JS - Software Diese Programm-Option benötigen Sie um Kundendaten aus der JS-Software in andere Programme wie Word, Works oder Excel zu exportieren. Wählen Sie aus dem Programm-Menu unter

Mehr

Views in SQL. 2 Anlegen und Verwenden von Views 2

Views in SQL. 2 Anlegen und Verwenden von Views 2 Views in SQL Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2010-07-15 Inhaltsverzeichnis 1 Wozu dienen Views? 1 2 Anlegen und Verwenden von Views 2 3 Schreibfähigkeit von Views 3 3.1 Views schreibfähig

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort... 13

Auf 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

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten.

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten. Einführung SQL 2010 Niko Becker Mit unseren Übungen zu ACCESS können Sie Aufbau und Struktur einer relationalen Datenbank kennenlernen. Wir zeigen Ihnen wie Sie Tabellen, Formulare und Berichte erstellen

Mehr

Labor 3 - Datenbank mit MySQL

Labor 3 - Datenbank mit MySQL Labor 3 - Datenbank mit MySQL Hinweis: Dieses Labor entstand z.t. aus Scripten von Prof. Dr. U. Bannier. 1. Starten des MySQL-Systems MySQL ist ein unter www.mysql.com kostenlos erhältliches Datenbankmanagementsystem.

Mehr

Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien

Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien 1.1 Definition Datenbank Ein Datenbanksystem (DBS) ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS

Mehr

Berechnungen in Access Teil I

Berechnungen in Access Teil I in Access Teil I Viele Daten müssen in eine Datenbank nicht eingetragen werden, weil sie sich aus anderen Daten berechnen lassen. Zum Beispiel lässt sich die Mehrwertsteuer oder der Bruttopreis in einer

Mehr

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R VII-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit

Mehr

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware Datenübernahme von HKO 5.9 zur Advolux Kanzleisoftware Die Datenübernahme (DÜ) von HKO 5.9 zu Advolux Kanzleisoftware ist aufgrund der von Update zu Update veränderten Datenbank (DB)-Strukturen in HKO

Mehr

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3

Mehr

2.5.2 Primärschlüssel

2.5.2 Primärschlüssel Relationale Datenbanken 0110 01101110 01110 0110 0110 0110 01101 011 01110 0110 010 011011011 0110 01111010 01101 011011 0110 01 01110 011011101 01101 0110 010 010 0110 011011101 0101 0110 010 010 01 01101110

Mehr

Erstellen der Barcode-Etiketten:

Erstellen der Barcode-Etiketten: Erstellen der Barcode-Etiketten: 1.) Zuerst muss die Schriftart Code-39-Logitogo installiert werden! Das ist eine einmalige Sache und muss nicht zu jeder Börse gemacht werden! Dazu speichert man zunächst

Mehr

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15 Vorwort..................................................... 13 Kapitel 1 Einleitung.......................................... 15 Kapitel 2 SQL der Standard relationaler Datenbanken... 19 2.1 Die Geschichte................................

Mehr

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 4 Die Datenbank Kuchenbestellung In diesem Kapitel werde ich die Theorie aus Kapitel 2 Die Datenbank Buchausleihe an Hand einer weiteren Datenbank Kuchenbestellung

Mehr

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort 13

Auf 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

Mehr

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG it4sport GmbH HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG Stand 10.07.2014 Version 2.0 1. INHALTSVERZEICHNIS 2. Abbildungsverzeichnis... 3 3. Dokumentenumfang... 4 4. Dokumente anzeigen... 5 4.1 Dokumente

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

Mehr

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 Hochschule Darmstadt DATENBANKEN Fachbereich Informatik Praktikum 3 Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 PL/SQL Programmierung Anwendung des Cursor Konzepts und Stored Procedures Und Trigger

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

teamsync Kurzanleitung

teamsync Kurzanleitung 1 teamsync Kurzanleitung Version 4.0-19. November 2012 2 1 Einleitung Mit teamsync können Sie die Produkte teamspace und projectfacts mit Microsoft Outlook synchronisieren.laden Sie sich teamsync hier

Mehr

Access [basics] Rechnen in Berichten. Beispieldatenbank. Datensatzweise berechnen. Berechnung im Textfeld. Reporting in Berichten Rechnen in Berichten

Access [basics] Rechnen in Berichten. Beispieldatenbank. Datensatzweise berechnen. Berechnung im Textfeld. Reporting in Berichten Rechnen in Berichten Berichte bieten die gleichen Möglichkeit zur Berechnung von Werten wie Formulare und noch einige mehr. Im Gegensatz zu Formularen bieten Berichte die Möglichkeit, eine laufende Summe zu bilden oder Berechnungen

Mehr

Übersicht der wichtigsten MySQL-Befehle

Ü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

Mehr

Access 2010. Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012. inkl. zusätzlichem Übungsanhang ACC2010-UA

Access 2010. Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012. inkl. zusätzlichem Übungsanhang ACC2010-UA Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012 Access 2010 Grundlagen für Anwender inkl. zusätzlichem Übungsanhang ACC2010-UA 3 Access 2010 - Grundlagen für Anwender 3 Daten in Formularen bearbeiten

Mehr

1 BEDIENUNGSANLEITUNG

1 BEDIENUNGSANLEITUNG 1 BEDIENUNGSANLEITUNG 1.1 Kunde In diesem Fenster können die Stammdaten des Kunden eingetragen werden oder es kann eine Änderung der Stammdaten durchgeführt werden. Zusätzlich kann man auch Kunden nach

Mehr

Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5

Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5 Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5 Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Hinweise Der Aufgabensatz

Mehr

Abfragen: Grundbausteine

Abfragen: Grundbausteine Abfragen: Grundbausteine Abfragen sollen gezielt Teile der Information wiedergeben. Das Ergebnis einer solchen Operation ist eine. Der Aufbau der Ergebnistabelle wird durch zwei Grundverfahren festgelegt:

Mehr

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole Lavid-F.I.S. Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der Lavid Software GmbH Dauner Straße 12, D-41236 Mönchengladbach http://www.lavid-software.net Support:

Mehr

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 Kapitel 33 Der xml-datentyp In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 995 996 Kapitel 33: Der xml-datentyp Eine der wichtigsten

Mehr

Waimea Phone Monitor. Handbuch. Anzeige von eingehenden Anrufen auf Telefonanlagen mit TAPI-Interface

Waimea Phone Monitor. Handbuch. Anzeige von eingehenden Anrufen auf Telefonanlagen mit TAPI-Interface Waimea Phone Monitor Handbuch Anzeige von eingehenden Anrufen auf Telefonanlagen mit TAPI-Interface Ermittlung des Namens und anderer Informationen aus einer beliebigen ODBC-Datenbank auf Basis der Telefonnummer

Mehr

MMS - Update auf Version 4.4

MMS - Update auf Version 4.4 MMS - Update auf Version 4.4 1. Übersicht Folgende MMS Programmverbesserungen/-neuerungen wurden u. a. vorgenommen: - Die Eingabemaske für Meinungen wurde komplett überarbeitet (siehe Punkt 3). - Der E-Mail-Generator

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

STRATO Mail Einrichtung Mozilla Thunderbird

STRATO Mail Einrichtung Mozilla Thunderbird STRATO Mail Einrichtung Mozilla Thunderbird Einrichtung Ihrer E-Mail Adresse bei STRATO Willkommen bei STRATO! Wir freuen uns, Sie als Kunden begrüßen zu dürfen. Mit der folgenden Anleitung möchten wir

Mehr

Hinweise zur Installation von MySQL

Hinweise zur Installation von MySQL Hinweise zur Installation von MySQL Im Folgenden werden einige Hinweise gegeben, die die Einrichtung einer MySQL-Lernumgebung am eigenen Windows-Rechner erleichtern sollen. Der Text ist vor allem für diejenigen

Mehr

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014) Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...

Mehr

Lieferschein Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering.

Lieferschein Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering. Lieferschein Lieferscheine Seite 1 Lieferscheine Seite 2 Inhaltsverzeichnis 1. STARTEN DER LIEFERSCHEINE 4 2. ARBEITEN MIT DEN LIEFERSCHEINEN 4 2.1 ERFASSEN EINES NEUEN LIEFERSCHEINS 5 2.1.1 TEXTFELD FÜR

Mehr

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH MORE Profile Pass- und Lizenzverwaltungssystem erstellt von: Thorsten Schumann erreichbar unter: thorsten.schumann@more-projects.de Stand: MORE Projects GmbH Einführung Die in More Profile integrierte

Mehr

Datenbanken für Online Untersuchungen

Datenbanken für Online Untersuchungen Datenbanken für Online Untersuchungen Im vorliegenden Text wird die Verwendung einer MySQL Datenbank für Online Untersuchungen beschrieben. Es wird davon ausgegangen, dass die Untersuchung aus mehreren

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

Internationales Altkatholisches Laienforum

Internationales Altkatholisches Laienforum Internationales Altkatholisches Laienforum Schritt für Schritt Anleitung für die Einrichtung eines Accounts auf admin.laienforum.info Hier erklären wir, wie ein Account im registrierten Bereich eingerichtet

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Wenn der Name nicht gerade www.buch.de oder www.bmw.de heißt, sind Internetadressen oft schwer zu merken Deshalb ist es sinnvoll, die Adressen

Mehr

Bedienungsanleitung Anlassteilnehmer (Vereinslisten)

Bedienungsanleitung Anlassteilnehmer (Vereinslisten) Bedienungsanleitung Anlassteilnehmer Dieses Programm ist speziell für Vereine entworfen. Es ist lizenzfrei verwendbar und gratis. Das Programm ist mit Excel 2010 erstellt worden und enthält VBA Programmierungen,

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 15

Inhaltsverzeichnis. 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

Mehr

ACCESS das Datenbankprogramm. (Einführung) DI (FH) Levent Öztürk

ACCESS das Datenbankprogramm. (Einführung) DI (FH) Levent Öztürk ACCESS das Datenbankprogramm Vom Microsoft (Einführung) DI (FH) Levent Öztürk Inhalt Grundlagen einer Datenbank Planung einer Datenbank Programm starten Datenbank Anlegen Tabellen anlegen Tabellen Verknüpfen

Mehr

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language) Einführung in SQL 1. Grundlagen Structured Query Language Viele Dialekte Unterteilung: i. DDL (Data Definition Language) ii. iii. DML (Data Modifing Language) DRL (Data Retrival Language) 1/12 2. DDL Data

Mehr

GITS Steckbriefe 1.9 - Tutorial

GITS Steckbriefe 1.9 - Tutorial Allgemeines Die Steckbriefkomponente basiert auf der CONTACTS XTD Komponente von Kurt Banfi, welche erheblich modifiziert bzw. angepasst wurde. Zuerst war nur eine kleine Änderung der Komponente für ein

Mehr

Serienbriefe schreiben mit Ratio - Adressen (Microsoft Word Versionen 8.0 und 9.0)

Serienbriefe schreiben mit Ratio - Adressen (Microsoft Word Versionen 8.0 und 9.0) Serienbriefe schreiben mit Ratio - Adressen (Microsoft Word Versionen 8.0 und 9.0) Allgemeines Die in Ratio gespeicherten Adressen können jederzeit exportiert werden, um sie an anderer Stelle weiter zu

Mehr

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt. Eine Weitergabe

Mehr

Auf der linken Seite wählen Sie nun den Punkt Personen bearbeiten.

Auf der linken Seite wählen Sie nun den Punkt Personen bearbeiten. Personenverzeichnis Ab dem Wintersemester 2009/2010 wird das Personenverzeichnis für jeden Mitarbeiter / jede Mitarbeiterin mit einer Kennung zur Nutzung zentraler Dienste über das LSF-Portal druckbar

Mehr

Ein Ausflug zu ACCESS

Ein Ausflug zu ACCESS Ein Ausflug zu ACCESS Die folgenden Folien zeigen beispielhaft, wie man sein DB- Wissen auf ACCESS übertragen kann betrachtet wird ACCESS 2002, da gerade im Bereich der Nutzung von SQL hier einiges nachgearbeitet

Mehr

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Fahren fort mit SQL Befehlen. Bilden Relationenalgebra auf SQL ab. So Umsetzung von Anfragen an die DB (bzw. Tabellen) möglich. SELECT

Mehr

Massenversand Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering.

Massenversand Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering. Massenversand Massenversand Seite 1 Massenversand Seite 2 Inhaltsverzeichnis 1. WICHTIGE INFORMATIONEN ZUR BEDIENUNG VON CUMULUS 4 2. STAMMDATEN FÜR DEN MASSENVERSAND 4 2.1 ALLGEMEINE STAMMDATEN 4 2.2

Mehr

Sie sollen eine Datenbank für Befragungen mittels Online-Fragebögen zu unterschiedlichen Themen erstellen:

Sie sollen eine Datenbank für Befragungen mittels Online-Fragebögen zu unterschiedlichen Themen erstellen: FRAGEBOGEN-AUFGABE Sie sollen eine Datenbank für Befragungen mittels Online-Fragebögen zu unterschiedlichen Themen erstellen: Ein Fragebogen besteht aus mehreren Fragen, eine Frage kann in mehreren Fragebögen

Mehr

AutoCAD 2007 - Dienstprogramm zur Lizenzübertragung

AutoCAD 2007 - Dienstprogramm zur Lizenzübertragung AutoCAD 2007 - Dienstprogramm zur Lizenzübertragung Problem: Um AutoCAD abwechselnd auf mehreren Rechnern einsetzen zu können konnte man bis AutoCAD 2000 einfach den Dongle umstecken. Seit AutoCAD 2000i

Mehr

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel Anwendungsentwicklung Datenbanken SQL Stefan Goebel SQL Structured Query Language strukturierte Abfragesprache von ANSI und ISO standardisiert deklarativ bedeutet was statt wie SQL beschreibt, welche Daten

Mehr

SQL (Structured Query Language) Schemata Datentypen

SQL (Structured Query Language) Schemata Datentypen 2 SQL Sprachelemente Grundlegende Sprachelemente von SQL. 2.1 Übersicht Themen des Kapitels SQL Sprachelemente Themen des Kapitels SQL (Structured Query Language) Schemata Datentypen Im Kapitel SQL Sprachelemente

Mehr

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.)

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.) Seite 1/7 Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.) Hier sehen Sie eine Anleitung wie man einen Serienbrief erstellt. Die Anleitung

Mehr

Inventarverwaltung mit Access 2007/10

Inventarverwaltung mit Access 2007/10 Inventarverwaltung mit Access 2007/10 Version 1.0 kostenlose Vollversion Autor: sbduss Beat Duss Schweiz http://www.sbduss.com letzte Änderung 21.06.2015 Inhaltsverzeichnis Installation... 3 Hauptfenster...

Mehr

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. Der Serienversand Was kann man mit der Maske Serienversand machen? 1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. 2. Adressen auswählen,

Mehr

A. Ersetzung einer veralteten Govello-ID ( Absenderadresse )

A. Ersetzung einer veralteten Govello-ID ( Absenderadresse ) Die Versendung von Eintragungsnachrichten und sonstigen Nachrichten des Gerichts über EGVP an den Notar ist nicht möglich. Was kann der Notar tun, um den Empfang in seinem Postfach zu ermöglichen? In zahlreichen

Mehr

Stammdatenanlage über den Einrichtungsassistenten

Stammdatenanlage über den Einrichtungsassistenten Stammdatenanlage über den Einrichtungsassistenten Schritt für Schritt zur fertig eingerichteten Hotelverwaltung mit dem Einrichtungsassistenten Bitte bereiten Sie sich, bevor Sie starten, mit der Checkliste

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen Dateiname: ecdl5_01_02_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Access

Mehr

Dokumentation IBIS Monitor

Dokumentation IBIS Monitor Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt

Mehr

Anleitung Postfachsystem Inhalt

Anleitung Postfachsystem Inhalt Anleitung Postfachsystem Inhalt 1 Allgemeines... 2 2 Einloggen... 2 3 Prüfen auf neue Nachrichten... 2 4 Lesen von neuen Nachrichten... 3 5 Antworten auf Nachrichten... 4 6 Löschen von Nachrichten... 4

Mehr

Leseprobe: SQL mit MySQL - Band 4 Kompendium mit Online-Übungs-DB. Kompendium zur schnellen Kurzinformation der Datenbanksprache SQL/MySQL 5.

Leseprobe: SQL mit MySQL - Band 4 Kompendium mit Online-Übungs-DB. Kompendium zur schnellen Kurzinformation der Datenbanksprache SQL/MySQL 5. Leseprobe: SQL mit MySQL - Band 4 Kompendium mit Online-Übungs-DB Kompendium zur schnellen Kurzinformation der Datenbanksprache SQL/MySQL 5.1 im Internet: www.datenbanken-programmierung.de... 3.0 SQL nach

Mehr

P&P Software - Adressexport an Outlook 05/29/16 14:44:26

P&P Software - Adressexport an Outlook 05/29/16 14:44:26 Adressexport an Outlook Wozu? Aus EASY können viele Daten im Excelformat ausgegeben werden. Diese Funktion kann zum Beispiel zum Export von Lieferantenadressen an Outlook genutzt werden. Hinweis Wir können

Mehr

Funktionsbeschreibung. Lieferantenbewertung. von IT Consulting Kauka GmbH

Funktionsbeschreibung. Lieferantenbewertung. von IT Consulting Kauka GmbH Funktionsbeschreibung Lieferantenbewertung von IT Consulting Kauka GmbH Stand 16.02.2010 odul LBW Das Modul LBW... 3 1. Konfiguration... 4 1.1 ppm... 4 1.2 Zertifikate... 5 1.3 Reklamationsverhalten...

Mehr

Abbildung 1: Das ERM. Nun zu den Tabellen: Zunächst wird aus jeder Entity eine Tabelle, d.h. wir erhalten:

Abbildung 1: Das ERM. Nun zu den Tabellen: Zunächst wird aus jeder Entity eine Tabelle, d.h. wir erhalten: Lösung Casino 1 Zunächst das Entity-Relationship-Modell: Kundenverzeichnis wird getätigt von Bestellung führt aus enthält Personal n 1 beherrscht Speisekarte Tätigkeiten Abbildung 1: Das ERM Nun zu den

Mehr

2. Im Admin Bereich drücken Sie bitte auf den Button Mediathek unter der Rubrik Erweiterungen.

2. Im Admin Bereich drücken Sie bitte auf den Button Mediathek unter der Rubrik Erweiterungen. Mediathek Die Mediathek von Schmetterling Quadra ist Ihr Speicherort für sämtliche Bilder und PDF-Dateien, die Sie auf Ihrer Homepage verwenden. In Ihrer Mediathek können Sie alle Dateien in Ordner ablegen,

Mehr

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 Die Installation der FuxMedia Software erfolgt erst NACH Einrichtung des Netzlaufwerks! Menüleiste einblenden, falls nicht vorhanden Die

Mehr