SQL Flashcards

1
Q

Was ist SQL?

A
  • Structured Query Language
  • Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken
  • case insensitive
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Welche Teilsprachen der SQL gibt es?

A
  1. DDL - Data Definition Language - Erstellen von Datenbank-Objekten
  2. DML - Data Manipulation Language - Anlegen, Ändern, Löschen von Daten
  3. DQL - Data Query Language - Abfragen von Daten
  4. DCL - Data Control Language - Anlegen von Benutzern, Vergabe von Zugriffsrechten
  5. TCL - Transaction Control Language - Ausführen von Transaktionen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Welche Bestandteile können mit SQL-DDL definiert werden?

A
  • Relationenschemata
  • Attribute
  • Wertebereiche
  • Primärschlüssel
  • Fremdschlüssel
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Welche Befehle werden von SQL-DDL hauptsächlich verwendet?

A
  • CREATE
  • ALTER
  • DROP
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was bringt CREATE?

A
  • erzeugt eine neue Tabelle, Datenbank etc.

- Beispiel: CREATE TABLE professoren

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was bringt ALTER?

A
  • modifiziert eine Tabelle, Datenbank etc.

- Beispiel: ALTER TABLE professoren MODIFY name

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was bringt DROP?

A
  • Löschen von einer Tabelle
  • DROP TABLE professoren
  • Löschen von Inhalten einer Tabelle aber behalten der Struktur: DELETE * FROM professoren
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was tut ein Index?

A
  • lesende Zugriffe werden beschleunigt
  • ändernde Zugriffe verlangsamt, da sie sortiert werden müssen
  • mit CREATE INDEX wird ein Index für das angegebene Feld erzeugt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Was ist das Foreign Key Constraint?

A
  • Verbindung zwischen Fremdschlüssel und dem zugeordneten Primärschlüssel
  • wird dieser Foreign Key Constraint gesetzt, sollte auf die beteiligten Fremdschlüssel ein Index gesetzt werden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Was ist die Aufgabe der SQL-DML

A
  • Data Manipulation Language

- verändert Anwenderdaten in der Datenbank

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was ist INSERT?

A
  • fügt neue Statemens in eine Datenbanktabelle ein
  • mit dem Befehl VALUES wird der Datensatz angesprochen
  • Beispiel: INSERT INTO kunde (id, name) VALUES (5, Mustermann)
  • Auswahl zu verändernder Daten mit SELECT
  • Beispiel: INSERT INTO kunde SELECT * FROM neue_kunde
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was ist UPDATE?

A
  • Änderung von Daten in einer Tabelle, ohne WHERE werden alle Zeilen der Tabelle verändert
  • In der SET-Klausel gibt man mit Spalte = Wert an, welche Tabellenspalte der aktuellen Zeile welchen Wert bekommen soll
  • Beispiel:
    update kunde
    set strasse = ‘schlossallee 12’
    plz = ‘213’
    where id = 5
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was tut DELETE?

A
  • Löscht aus Zeilen einer Tabelle, ohne WHERE werden alle Zeilen eine Tabelle gelöscht
  • auch leere Tabelle bleibt Teil der DB, nur mit DROP wird die Tabelle entfernt
  • Beispiel: DELETE FROM kunde WHERE name =’Mustermann’
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Worauf muss bei DML-Befehlen geachtet werden?

A
  • die Integritätsregeln müssen eingehalten werden, z.B. keinen Kunden löschen, wenn es noch einen aktuellen Auftrag gibt
  • alle Spalten die NOT NULL haben, müssen einen Wert zugewiesen haben
  • Spaltenlänge muss beachtet werden
  • wenn das Statement fehlschlägt, werden die Zeilen wieder in den ursprünglichen Zustand zurückversetzt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Was ist SELECT?

A
  • Teil der SQL-DQL
  • wichtigste SQL-Statement
  • hat mehrere Klauseln:
    1. SELECT
    2. FROM
    3. JOIN
    4. WHERE
    5. GROUP BY
    6. ORDER BY
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Was macht DISTINCT?

A
  • untedrückt mehrfach auftretende Werte

- Beispiel: SELECT DISTINCT ort, gibt alle Orte aus wo Kunden wohnen, aber keine doppelten Orte

17
Q

Wie verwendet man ein Aias?

A
  • SELECT name AS langer_name FROM kunde

- SELECT name.ort from kunde AS k

18
Q

Was macht FROM?

A
  • muss mindestens eine Tabelle enthalten, die im SELECT Statement angesprochen wird, alle anderen Tabellen werden in der JOIN-Klausel angegeben
  • wenn eine Tabelle mehrfach verwendet werden soll, muss ihr ein Alias gegeben werden
  • Beispiel: SELECT tb1.* FROM tabelle1 AS tb1, tabelle1 AS tb2 WHERE tb1.id <> tb2.id AND tb1.name = tb2.name
19
Q

Was macht WHERE?

A
  • beschreibt die eingeschränkte Auswahl an Zeilen
  • kann aus verschiedenen booleschen Ausdrücken zusammengesetzt werden (AND, OR, NOT)
  • wenn man nach NULL suchen will, muss IS NULL verwendet werden
20
Q

Was macht LIKE?

A
  • spezieller Vergleichsoperator für Zeichenfelder
21
Q

Was ist der SFW-Block

A
  • SELECT, FROM, WHERE
  • SELECT: Projektionsliste angegeben, integriert arithmetische Operationen und Aggregatfunktionen
  • FROM: spezifiziert zu verwendende Relation, führt eventuelle Umbenennungen durch, Verbindet Relationen mittels kartesischen Produkts
  • WHERE: spezifiziert Selektionsbedingungen und Verbundbedingungen um aus dem kartesischen Produkt einen Gleichverbund zu machen
22
Q

Was macht JOIN?

A
  • Verbindet mehrere Tabellen
  • Folgt direkt auf FROM-Klausel
  • wenn JOIN verwendet wird, wird nur eine Tabelle in FROM genannt und alle weiteren in JOIN
  • JOIN Formulierung hat den Vorteil besserer Lesbarkeit
  • bei mehr als zwei Tabellen müssen mehrere JOINS verwendet werden
  • einziger SQL-Befehl der mehrfach genannt werden darf, außer subselects
23
Q

Was macht GROUP BY?

A
  • gleiche Spaltenwerte werden zu Gruppenn zusammengefasst

- man kann COUNT oder SUM durchführen