O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

SQL von Kopf bis Fuß

Book Description

Worum geht es in diesem Buch?

Ihre Daten erdrücken Sie? Ihre Tabellen verheddern sich regelmäßig? Wir haben ein Mittel, wie Sie Ihre Datenbanken in den Griff bekommen: SQL von Kopf bis Fuß nimmt Sie mit auf eine Reise durch die SQL-Welt, es

Table of Contents

  1. Copyright
  2. Widmung
  3. Die Autorin von SQL von Kopf bis Fuß
  4. Über den Übersetzer dieses Buchs
  5. Wie man dieses Buch benutzt Einführung
  6. Daten und Tabellen: Ein Ort für alle Dinge
    1. Daten definieren
    2. Betrachten Sie Daten in Kategorien
    3. Was in einer Datenbank steckt
    4. Ihre Datenbank durch die Röntgenbrille
    5. Datenbanken enthalten verwandte Daten
    6. Tabellen unter der Lupe
    7. Übernehmen Sie das Kommando!
    8. Die Tabelle einrichten: die CREATE TABLE-Anweisung
    9. Eine kompliziertere Tabelle erstellen
    10. Wie einfach das Schreiben von SQL doch ist
    11. Endlich die Tabelle meine_kontakte erstellen
    12. Ihre Tabelle ist fertig
    13. Machen Sie Bekanntschaft mit ein paar Datentypen
    14. Eine Beschreibung Ihrer Tabelle
    15. Eine bestehende Datenbank oder Tabelle kann nicht neu erstellt werden!
    16. Raus mit der alten Tabelle, rein mit der neuen
    17. Die INSERT-Anweisung erstellen
    18. Variationen zu einer INSERT-Anweisung
    19. Spalten ohne Werte
    20. Blicken Sie mit der SELECT-Anweisung in Ihre Tabelle
    21. Ihre innere NULL beherrschen
    22. NOT NULL erscheint in DESC
    23. Die Lücken mit DEFAULT füllen
    24. Ihr SQL-Werkzeugkasten
  7. Die SELECT-Anweisung: Geschenkter Datenabruf
    1. Ein Date oder kein Date?
    2. Ein besseres SELECT
    3. Was ist dieses *?
    4. Wie Sie Ihre Datentypen abfragen
    5. Mehr Interpunktionsprobleme
    6. Ungebundene Anführungszeichen
    7. Einfache Anführungszeichen sind Sonderzeichen
    8. Daten mit einfachen Anführungszeichen einfügen
    9. Bestimmte Spalten auswählen, um das Ergebnis einzugrenzen
    10. Schnellere Ergebnisse mit ausgewählten Spalten
    11. Ihre Abfragen kombinieren
    12. Numerische Werte finden
    13. Vergleichsoperatoren
    14. Mit Vergleichsoperatoren numerische Daten finden
    15. Mit Vergleichsoperatoren Textdaten einfangen
    16. Sein ODER nicht sein
    17. Der Unterschied zwischen AND und OR
    18. NULLen finden mit IS NULL
    19. Zeit sparen mit einem Schlüsselwort: LIKE
    20. Der Joker sticht
    21. Bereiche wählen mit AND und Vergleichsoperatoren
    22. Nach dem Date ist man entweder IN ...
    23. ... oder NOT IN
    24. Mehr NOT
  8. DELETE und UPDATE: Veränderung tut gut
    1. Clowns sind gruselig
    2. Clowns festhalten
    3. Wie Ihre Clown-Daten eingefügt werden
    4. Bonzo, wir haben ein Problem
    5. Mit DELETE einen Datensatz loswerden
    6. Unsere neue DELETE-Anweisung verwenden
    7. DELETE-Regeln
    8. Der INSERT-DELETE-Doppelschritt
    9. Passen Sie bei Ihren DELETEs auf
    10. Der Ärger mit ungenauen DELETEs
    11. Daten ändern mit UPDATE
    12. UPDATE-Regeln
    13. UPDATE ist das neue INSERT/DELETE
    14. UPDATE im Einsatz
    15. Aktualisieren Sie Ihre Preise
    16. Wir brauchen nur ein UPDATE
    17. Ihr SQL-Werkzeugkasten
  9. Cleveres Tabellen-Design: Warum normal sein?
    1. Zwei fischige Tabellen
    2. Bei einer Tabelle geht es um Beziehungen
    3. Atomare Daten
    4. Atomare Daten und Ihre Tabellen
    5. Gründe, normal zu sein
    6. Die Vorteile normalisierter Tabellen
    7. Clowns sind nicht normal
    8. Auf halbem Weg zu 1NF
    9. PRIMÄRSCHLÜSSEL-Regeln
    10. Gregors Tabelle in Ordnung bringen
    11. Unsere alte CREATE TABLE-Anweisung
    12. Zeig mir die Tabelle
    13. Zeitsparende Anweisung
    14. CREATE TABLE mit einem PRIMARY KEY
    15. 1, 2, 3 ... und alles automatisch
    16. Einer Tabelle einen PRIMARY KEY hinzufügen
    17. ALTER TABLE und ein neuer PRIMARY KEY
    18. Ihr SQL-Werkzeugkasten
  10. ALTER: ie Vergangenheit umschreiben
    1. Wir müssen Änderungen vornehmen
    2. Tabellenveränderungen
    3. Extrem-Tabellenumbau
    4. Die Tabelle umbenennen
    5. Wir müssen einige Pläne machen
    6. Ihre Spalten umfunktionieren
    7. Strukturelle Veränderungen
    8. Alter und Change
    9. Zwei Spalten mit nur einer SQL-Anweisung ändern
    10. Schnell! Löschen Sie diese Spalte
    11. Ein genauer Blick auf die nicht atomare Spalte wohnort
    12. Nach Mustern suchen
    13. Ein paar praktische String-Funktionen
    14. Eine neue Spalte mit einer aktuellen füllen
    15. Wie unsere UPDATE/SET-Kombo funktioniert
    16. Ihr SQL-Werkzeugkasten
  11. Fortgeschrittenes SELECT: Ihre Daten mit neuen Augen sehen
    1. Die Videothek Datenhausen baut um
    2. Probleme mit unseren aktuellen Tabellen
    3. Die bestehenden Daten zuordnen
    4. Die neue Spalte füllen
    5. UPDATE mit einem CASE-Ausdruck
    6. Es scheint, als hätten wir ein Problem
    7. Tabellen können unordentlich werden
    8. Die ausgewählten Daten sortieren
    9. Probieren Sie ein kleines ORDER BY
    10. Eine einzelne Spalte ordnen
    11. ORDER mit zwei Spalten
    12. ORDER mit mehreren Spalten
    13. Eine sortierte film_tabelle
    14. Die Reihenfolge mit DESC umkehren
    15. Das Pfadfinderinnen-Keksverkaufsproblem
    16. SUM kann für uns addieren
    17. Mit GROUP BY alle auf einmal addieren
    18. AVG mit GROUP BY
    19. MIN und MAX
    20. Mit COUNT die Tage zählen
    21. SELECT DISTINCT
    22. Die Anzahl an Ergebnissen limitieren
    23. Auf nur den zweiten Platz eingrenzen
  12. Eine Datenbank, viele Tabellen: Aus Ihrer Tabelle herauswachsen
    1. Ein Date für Norbert
    2. Alles ist verloren ...
    3. Über eine Tabelle hinausdenken
    4. Die Mehr-Tabellen-Clown-Datenbank
    5. Das clown_info-Datenbankschema
    6. Aus einer Tabelle zwei machen
    7. Ihre Tabellen verknüpfen
    8. Ihren Fremdschlüssel beschränken
    9. Warum Fremdschlüssel?
    10. Eine Tabelle mit einem Fremdschlüssel erstellen
    11. Beziehungen zwischen Tabellen
    12. Datenmuster: 1:1
    13. Datenmuster: Verwendungszwecke für 1:1-Tabellen
    14. Datenmuster: eins-zu-viele
    15. Datenmuster: nun die m:n-Beziehungen
    16. Datenmuster: Wir brauchen eine Verbindungstabelle
    17. Datenmuster: m:n
    18. Datenmuster: Gregors Liste reparieren
    19. Endlich 1NF
    20. Schlüssel auf mehreren Spalten
    21. Kurzform-Notationen
    22. Partielle funktionelle Abhängigkeit
    23. Transitive funktionelle Abhängigkeiten
    24. 2. Normalform
    25. Die 3. Normalform (endlich)
    26. Und so lebten Ralph (und gregors_liste) glücklich bis ans Ende ihrer Tage
    27. Ihr SQL-Werkzeugkasten
  13. Joins und Mehr-Tabellen-Operationen: Vereinigen wir uns!
    1. Immer diese Wiederholungen
    2. Ihre Tabellen vorab füllen
    3. Die »Schwer zu normalisieren«-Misere
    4. Die besonderen Interessen (Werte)
    5. Interessiert bleiben
    6. Alle Interessen aktualisieren
    7. Alle Interessen abfragen
    8. Viele Wege führen nach Rom
    9. CREATE, SELECT und INSERT (fast) gleichzeitig
    10. CREATE, SELECT und INSERT gleichzeitig
    11. Was das AS macht ...
    12. Spaltenaliase
    13. Wer braucht schon Tabellenaliase?
    14. Alles, was Sie schon immer über Joins wissen wollten ...
    15. Der Kartesische Join
    16. Ihren Inneren Join befreien
    17. Der Inner-Join im Einsatz: der Equi-Join
    18. Der Inner-Join im Einsatz: der Nicht-Equi-Join
    19. Der letzte Inner-Join: der Natural-Join
    20. Vereinte Abfragen?
    21. Tabellen- und Spaltenaliase im Gespräch
    22. Ihr SQL-Werkzeugkasten
  14. Unterabfragen: Abfragen in Abfragen
    1. Gregor wird Jobvermittler
    2. Gregors Liste erhält mehr Tabellen
    3. Gregor nutzt einen Inner-Join
    4. Aber er möchte noch andere Abfragen probieren
    5. Unterabfragen
    6. Zwei Abfragen zu einer kombinieren
    7. Anatomie einer Abfrage in einer Abfrage
    8. Eine Unterabfrage im Einsatz
    9. Regeln für Unterabfragen
    10. Regeln für Unterabfragen
    11. Unterabfragenaufbauschnellkurs
    12. Eine Unterabfrage als SELECT-Spalte
    13. Eine Unterabfrage mit einem Natural-Join
    14. Eine nicht-korrelierte Unterabfrage
    15. Korrelierte Unterabfragen
    16. Eine (nützliche) korrelierte Unterabfrage mit NOT EXISTS
    17. EXISTS und NOT EXISTS
    18. Gregors Jobvermittlung öffnet die Türen
    19. Auf dem Weg zur Party ...
    20. Ihr SQL-Werkzeugkasten
  15. Outer-Joins, Self-Joins und Unions: Neue Manöver
    1. Alte Daten aufräumen
    2. Hier geht's links und rechts
    3. Hier ist ein Left-Outer-Join
    4. Outer-Joins und mehrere Treffer
    5. Der Right-Outer-Join
    6. Während Sie mit Outer-Joins gespielt haben ...
    7. Wir könnten eine neue Tabelle erstellen
    8. Wie sich die neue Tabelle einfügt
    9. Ein selbstreferentieller Fremdschlüssel
    10. Eine Tabelle mit sich selbst verknüpfen
    11. Wir brauchen einen Self-Join
    12. Mehr-Tabellen-Informationen, 2. Weg
    13. Sie können eine UNION verwenden
    14. UNION ist beschränkt
    15. UNION-Regeln im Einsatz
    16. UNION ALL
    17. Aus einer Union eine Tabelle erzeugen
    18. INTERSECT und EXCEPT
    19. Mit Joins sind wir fertig, Zeit weiterzugehen...
    20. Unterabfragen und Joins im Vergleich
    21. Eine Unterabfrage in einen Join umwandeln
    22. Ein Self-Join als Unterabfrage
    23. Gregors Unternehmen wächst
    24. Ihr SQL-Werkzeugkasten
  16. Constraints, Views und Transaktionen: Zu viele Köche verderben die Datenbank
    1. Gregor hat Hilfskräfte eingestellt
    2. Tims erster Tag: Einen neuen Kunden einfügen
    3. Tim vermeidet eine NULL
    4. Drei Monate später
    5. Einen CHECK-CONSTRAINT einfügen
    6. Das Geschlecht einschränken
    7. Franks Job wird lästig
    8. Einen View erstellen
    9. Views betrachten
    10. Was der View tatsächlich macht
    11. Was ein View ist
    12. Einfügen, Aktualisieren und Löschen mit Views
    13. Vorgeben, dass der View eine richtige Tabelle ist
    14. Ein View mit CHECK OPTION
    15. Ihr View ist aktualisierbar, wenn ...
    16. Wenn Sie Ihre Views nicht mehr brauchen
    17. Wenn guten Datenbanken Böses widerfährt
    18. Was im Geldautomaten abläuft
    19. Mehr Ärger am Geldautomaten
    20. Es ist kein Traum, es ist eine Transaktion
    21. Der klassische ACID-Test
    22. SQL hilft Ihnen, Transaktionen zu steuern
    23. Was im Geldautomat hätte passieren sollen
    24. Unter MySQL mit Transaktionen arbeiten
    25. Und jetzt sind Sie dran
    26. Ihr SQL-Werkzeugkasten
  17. Sicherheit: Ihre Anlagen schützen
    1. Anwenderprobleme
    2. Fehler in der Clown-Datenbank vermeiden
    3. Das Benutzerkonto root schützen
    4. Einen neuen Benutzer hinzufügen
    5. Entscheiden, was genau ein Benutzer braucht
    6. Eine einfache GRANT-Anweisung
    7. GRANT-Variante
    8. Berechtigungen mit REVOKE widerrufen
    9. Eine verwendete GRANT OPTION widerrufen
    10. REVOKE mit Präzision
    11. Das Problem mit geteilten Konten
    12. Die Rolle verwenden
    13. Rollen löschen
    14. Eine Rolle WITH ADMIN OPTION verwenden
    15. CREATE USER und GRANT kombinieren
    16. Gregors Liste wird international
    17. Ihr SQL-Werkzeugkasten
    18. Wie wäre es mit Gregors Liste in Ihrer Stadt?
  18. Was übrig bleibt: Die Top Ten der Themen, die wir nicht behandelt haben
    1. Nr. 1. Ein GUI für Ihr RDBMS
    2. Nr. 2. Reservierte Wörter und Sonderzeichen
    3. Nr. 3. ALL, ANY und SOME
    4. Nr. 4. Mehr zu Datentypen
    5. Nr. 5. Temporäre Tabellen
    6. Nr. 6. Datentypen umwandeln
    7. Nr. 7. Wer bin ich? Wie spät ist es?
    8. Nr. 8. Nützliche mathematische Funktionen
    9. Nr. 9. Mit Indizes beschleunigen
    10. Nr. 10. PHP/MySQL in 2 Minuten
  19. MySQL-Installation: Probieren Sie es selbst
    1. Anfangen, und zwar schnell
    2. Anleitung und Problembehebung
    3. Schritte zur Installation von MySQL unter Windows
    4. Schritte zur Installation von MySQL unter Mac OS X
  20. Werkzeug-Überblick: All Ihre SQL-Werkzeuge