Upload
trinhquynh
View
217
Download
2
Embed Size (px)
Citation preview
Einfhrung in SQLDatenbanken bearbeiten
Jrgen Thomas
Wikibooks
Bibliografische InformationDiese Publikation ist bei der Deutschen Nationalbibliothek registriert. DetaillierteAngaben sind im Internet zu erhalten:HTTPS://PORTAL.D-NB.DE/OPAC.HTM?METHOD=SHOWOPTIONS#TOPEinschrnkung auf elektronische Datentrger, Titel Einfhrung in SQL.Namen von Programmen und Produkten sowie sonstige Angaben sind hufig ge-schtzt. Da es auch freie Bezeichnungen gibt, wird das Symbol nicht verwendet.Die Online-Version und die PDF-Version unterscheiden sich nur wegen unter-schiedlicher Seitenformate und technischer Mglichkeiten.Erstellt am 22. November 2011.
Diese Publikation ist entstanden bei Wikibooks, einem Projekt fr Lehr-, Sach-und Fachbcher unter den Lizenzen Creative Commons Attribution/Share-Alike(CC-BY-SA) und GFDL.PDF- und Druckversion sind entstanden mit dem Programm wb2pdf unter GPL.Dabei wurde das Textsatzprogramm LATEX verwendet, das unter der LPPL steht.Einzelheiten und Quellen stehen im Anhang auf Seite 481.
https://portal.d-nb.de/opac.htm?method=showOptions##top
Inhaltsverzeichnis
1. VORWORT 1
I. EINFHRUNG 3
2. EIN EINSTIEG 52.1. DATENBANKEN ENTHALTEN INFORMATIONEN . . . . . . . . . . . 52.2. ABFRAGE NACH DEN MITARBEITERN . . . . . . . . . . . . . . . . . 62.3. NEUAUFNAHME BEI DEN MITARBEITERN . . . . . . . . . . . . . . 72.4. SQL UND NATRLICHE SPRACHE . . . . . . . . . . . . . . . . . . . 82.5. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 102.6. SIEHE AUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3. EINLEITUNG 113.1. EINFHRUNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.2. GESCHICHTE VON SQL . . . . . . . . . . . . . . . . . . . . . . . . 123.3. BERSICHT BER DATENBANKMANAGEMENTSYSTEME . . . . . . 123.4. REGELN FR DIE BEISPIELE . . . . . . . . . . . . . . . . . . . . . . 143.5. SIEHE AUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4. RELATIONALE DATENBANKEN 174.1. GRUNDSTRUKTUR VON RELATIONALEN DATENBANKEN . . . . . . 174.2. TABELLEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.3. SPALTEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.4. VERKNPFUNGEN UND SCHLSSEL . . . . . . . . . . . . . . . . . 224.5. SIEHE AUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5. NORMALISIERUNG 275.1. GRUNDGEDANKEN . . . . . . . . . . . . . . . . . . . . . . . . . . . 275.2. TABELLENKALKULATION ALS AUSGANGSPUNKT . . . . . . . . . . 285.3. DIE 1. NORMALFORM . . . . . . . . . . . . . . . . . . . . . . . . . 305.4. DIE 2. NORMALFORM . . . . . . . . . . . . . . . . . . . . . . . . . 325.5. DIE 3. NORMALFORM . . . . . . . . . . . . . . . . . . . . . . . . . 355.6. ZUSTZLICHE MASSNAHMEN . . . . . . . . . . . . . . . . . . . . . 365.7. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 39
III
Inhaltsverzeichnis
5.8. SIEHE AUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6. BEISPIELDATENBANK 416.1. SACHVERHALT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416.2. SCHEMATISCHE DARSTELLUNG . . . . . . . . . . . . . . . . . . . . 436.3. TABELLENSTRUKTUR UND DATENBANK . . . . . . . . . . . . . . . 446.4. ANMERKUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
II. GRUNDLAGEN 49
7. SQL-BEFEHLE 517.1. ALLGEMEINE HINWEISE . . . . . . . . . . . . . . . . . . . . . . . . 527.2. DML DATA MANIPULATION LANGUAGE . . . . . . . . . . . . . 537.3. DDL DATA DEFINITION LANGUAGE . . . . . . . . . . . . . . . . 567.4. TCL TRANSACTION CONTROL LANGUAGE . . . . . . . . . . . . 567.5. DCL DATA CONTROL LANGUAGE . . . . . . . . . . . . . . . . . 567.6. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 577.7. BUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577.8. SIEHE AUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
8. DML (1) DATEN ABFRAGEN 618.1. SELECT ALLGEMEINE HINWEISE . . . . . . . . . . . . . . . . . 618.2. DIE EINFACHSTE ABFRAGE . . . . . . . . . . . . . . . . . . . . . . 628.3. EINGRENZEN DER SPALTEN . . . . . . . . . . . . . . . . . . . . . . 638.4. DISTINCT KEINE DOPPELTEN ZEILEN . . . . . . . . . . . . . . 648.5. WHERE EINGRENZEN DER ERGEBNISMENGE . . . . . . . . . . 648.6. ORDER BY SORTIEREN . . . . . . . . . . . . . . . . . . . . . . . 658.7. FROM MEHRERE TABELLEN VERKNPFEN . . . . . . . . . . . . 678.8. AUSBLICK AUF KOMPLEXE ABFRAGEN . . . . . . . . . . . . . . . . 688.9. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 698.10. BUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
9. DML (2) DATEN SPEICHERN 739.1. INSERT DATEN EINFGEN . . . . . . . . . . . . . . . . . . . . . 739.2. UPDATE DATEN NDERN . . . . . . . . . . . . . . . . . . . . . 769.3. DELETE DATEN LSCHEN . . . . . . . . . . . . . . . . . . . . . 789.4. TRUNCATE TABELLE LEEREN . . . . . . . . . . . . . . . . . . . 799.5. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 799.6. BUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
10. DDL STRUKTUR DER DATENBANK 8310.1. ALLGEMEINE SYNTAX . . . . . . . . . . . . . . . . . . . . . . . . . 83
IV
Inhaltsverzeichnis
10.2. HAUPTTEILE DER DATENBANK . . . . . . . . . . . . . . . . . . . . 84
10.3. ERGNZUNGEN ZU TABELLEN . . . . . . . . . . . . . . . . . . . . . 87
10.4. PROGRAMMIEREN MIT SQL . . . . . . . . . . . . . . . . . . . . . . 89
10.5. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.6. BUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.7. SIEHE AUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
11. TCL ABLAUFSTEUERUNG 9311.1. BEISPIELE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
11.2. TRANSAKTIONEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
11.3. TRANSAKTION ERFOLGREICH BEENDEN . . . . . . . . . . . . . . . 95
11.4. SICHERUNGSPUNKTE . . . . . . . . . . . . . . . . . . . . . . . . . . 96
11.5. TRANSAKTION RCKGNGIG MACHEN . . . . . . . . . . . . . . . . 96
11.6. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 96
11.7. BUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
12. DCL ZUGRIFFSRECHTE 10112.1. GRANT ZUGRIFF GEWHREN . . . . . . . . . . . . . . . . . . . . 101
12.2. REVOKE ZUGRIFF VERWEIGERN . . . . . . . . . . . . . . . . . . 101
13. DATENTYPEN 10313.1. VORDEFINIERTE DATENTYPEN . . . . . . . . . . . . . . . . . . . . 103
13.2. KONSTRUIERTE UND BENUTZERDEFINIERTE DATENTYPEN . . . . 108
13.3. SPEZIALISIERTE DATENTYPEN . . . . . . . . . . . . . . . . . . . . 108
13.4. NATIONALE UND INTERNATIONALE ZEICHENSTZE . . . . . . . . 109
13.5. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 111
13.6. BUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
13.7. SIEHE AUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
14. FUNKTIONEN 11514.1. ALLGEMEINE HINWEISE . . . . . . . . . . . . . . . . . . . . . . . . 115
14.2. FUNKTIONEN FR ZAHLEN . . . . . . . . . . . . . . . . . . . . . . 116
14.3. FUNKTIONEN FR ZEICHENKETTEN . . . . . . . . . . . . . . . . . 119
14.4. FUNKTIONEN FR DATUMS- UND ZEITWERTE . . . . . . . . . . . 121
14.5. FUNKTIONEN FR LOGISCHE UND NULL-WERTE . . . . . . . . . 122
14.6. KONVERTIERUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . 123
14.7. SPALTENFUNKTIONEN . . . . . . . . . . . . . . . . . . . . . . . . . 126
14.8. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 129
14.9. BUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
14.10. SIEHE AUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
V
Inhaltsverzeichnis
III. MEHR ZU ABFRAGEN 135
15. AUSFHRLICHE SELECT-STRUKTUR 13715.1. ALLGEMEINE SYNTAX . . . . . . . . . . . . . . . . . . . . . . . . . 13815.2. SET QUANTIFIER MENGENQUANTIFIZIERER . . . . . . . . . . . 13815.3. SELECT LIST AUSWAHLLISTE . . . . . . . . . . . . . . . . . . . . 13915.4. TABLE REFERENCE LIST TABELLEN-VERWEISE . . . . . . . . . . 14015.5. WHERE CLAUSE WHERE-KLAUSEL . . . . . . . . . . . . . . . . 14115.6. GROUP BY CLAUSE GROUP BY-KLAUSEL . . . . . . . . . . . . 14315.7. HAVING CLAUSE HAVING-KLAUSEL . . . . . . . . . . . . . . . 14315.8. UNION CLAUSE UNION-KLAUSEL . . . . . . . . . . . . . . . . 14415.9. ORDER BY CLAUSE ORDER BY-KLAUSEL . . . . . . . . . . . . 14415.10. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 14415.11. BUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
16. FUNKTIONEN (2) 14916.1. ALLGEMEINE HINWEISE . . . . . . . . . . . . . . . . . . . . . . . . 14916.2. FUNKTIONEN FR ZAHLEN . . . . . . . . . . . . . . . . . . . . . . 15016.3. FUNKTIONEN FR ZEICHENKETTEN . . . . . . . . . . . . . . . . . 15216.4. FUNKTIONEN FR DATUMS- UND ZEITWERTE . . . . . . . . . . . 15516.5. FUNKTIONEN FR LOGISCHE UND NULL-WERTE . . . . . . . . . 15716.6. VERSCHIEDENE FUNKTIONEN . . . . . . . . . . . . . . . . . . . . 15816.7. ZUSAMMENFASSUNG . . . . . . . . . . . . . . . . . . . . . . . . . . 15916.8. BUNGEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15916.9. SIEHE AUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
17. WHERE-KLAUSEL IM DETAIL 16517.1. ALLGEMEINE HINWEISE . . . . . . . . . . . . . . . . . . . . . . . . 16517.2. EINE EINZELNE BEDINGUNG . . . . . . . . . . . . . . . . . . . . . 16617.3. MEHRERE BEDINGUNGEN VERKNPFEN . . . . . . . . . . . . . . 17117