SQL (Structured Query Language) hat sich als Standardabfragesprache für relationale Datenbanken etabliert. SQL stellt die Schnittstelle zwischen der relationalen Datenbank und dem Anwendungsprogramm dar. Es lassen sich damit alle Operationen der Relationenalgebra aus Kapitel 4 realisieren. Die Sprachelement von SQL lassen sich in mehrere Kategorien unterteilen, die allerdings im Standard nicht festgeschrieben sind.
SHOW DATABASES;
CREATE DATABASE DBName;
USE DBName;
SHOW TABLES;
SHOW COLUMNS FROM tabellenname;
DROP DATABASE DBName;
C:\xampp\mysql\bin>mysqldump -u root db8ai > db8ai.sql oder alle Datenbanken: C:\xampp\mysql\bin>mysqldump -u root –all-databases > sicherung.sql
mysql> CREATE DATABASE db8ai; mysql> exit; C:\xampp\mysql\bin>mysql -u root db8ai < db8ai.sql bzw. alle Datenbanken: C:\xampp\mysql\bin>mysql -u root -p < sicherung.sql oder: mysql> CREATE DATABASE db8ai; mysql> USE db8ai; mysql> SOURCE C:\xampp\mysql\bin\db8ai.sql
Folgendes ER-Modell ist gegeben und dient als Grundlage für eine Datenbank, welche die fertiggestellten Häuser dokumentiert. Annahme: Jeder ORT ist direkt abhängig von der PLZ. D.h. Jeder Ort besitzt eine eigene PLZ!
Entwickle die zugehörigen Relationen in der 3. NF. Kennzeichne die Primär (z.B.: unterstreichen und PK dazuschreiben)- und Fremdschlüssel (z.B.: Relation mit . davor schreiben) eindeutig.
Erstelle die Datenbank mithilfe der SQL-Statements!
Befülle die Datenbank mit folgenden Daten
Personen
Franz Huber wohnt in der Anzengruberstrasse 6
Max Müller wohnt in der Anzengruberstrasse 8
Maxima Muster wohnt in der Anzengruberstrasse 7
Franz Müller wohnt in der Anzengruberstrasse 9
Häuser
Massivhaus mit Satteldach auf Grundstück 1010 mit 15000m2 in der Anzengruberstrasse 6 3300 Amstetten
Fertighaus (Ausbauhaus) auf Grundstück 1011 mit 4000m2 in der Anzengruberstrasse 7 3300 Amstetten
Fertighaus (schlüsselfertig) auf Grundstück 1012 mit 500m2 in der Anzengruberstrasse 8 3300 Amstetten
Fertighaus (Rohbau) auf Grundstück 1013 mit 1000m2 in der Anzengruberstrasse 9 3300 Amstetten
Entwickle folgende SQL-Abfragen.