Teil_4 Flashcards

1
Q

Was sind Prepared Statements?

A

Prepared Statements sind vorkompilierte SQL-Statements mit Platzhaltern für Werte, die später ausgeführt werden.

  • Sie verhindern SQL-Injection.
  • Sie verbessern die Performance, da sie nur einmal kompiliert werden.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Welche Vorteile bieten Prepared Statements?

A
  • Schutz vor SQL-Injection.
  • Verbesserung der Performance, da das Statement nur einmal kompiliert wird.
  • Wiederverwendbarkeit mit unterschiedlichen Daten.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wie werden Prepared Statements ausgeführt?

A
  1. Ein Prepared Statement wird mit Platzhaltern erstellt (z.B. SELECT * FROM users WHERE name = ?).
  2. Bei der Ausführung werden die Platzhalter durch tatsächliche Werte ersetzt (z.B. EXECUTE statement('matthias')).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was sind Stored Procedures?

A

Stored Procedures sind Funktionen, die direkt in der Datenbank mit SQL und prozeduraler Programmierung ausgeführt werden.

  • Reduziert die Netzwerklast.
  • Effiziente Datenverarbeitung auf dem Server.
  • Zugriff auf Schleifen, Variablen, Bedingungen und Ausnahmen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Welche Rückgabewerte gibt es bei Stored Procedures?

A
  • RETURN : Gibt den Wert der Expression zurück.
  • RETURN NEXT : Fügt eine neue Zeile zur Ergebnisliste hinzu.
  • RETURN QUERY : Gibt das Ergebnis einer Query zurück.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was sind Trigger?

A

Trigger sind spezielle Stored Procedures, die automatisch bei bestimmten Ereignissen (INSERT, UPDATE, DELETE) ausgeführt werden.

  • Sicherstellung der Datenintegrität.
  • Automatisierung von Prozessen (z.B. Aggregation von Werten).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Welche Arten von Triggern gibt es?

A
  • BEFORE: Vor der auslösenden Operation (z.B. Datenvalidierung).
  • AFTER: Nach der auslösenden Operation (z.B. Aktualisierung redundanter Daten).
  • INSTEAD OF: Ersetzt die auslösende Operation.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was sind die Eigenschaften von PL/pgSQL Trigger-Funktionen?

A
  • Keine Eingabeparameter.
  • Rückgabetyp ist trigger.
  • Zugriff auf Spezialvariablen: NEW (neue Zeile) und OLD (alte Zeile).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Was ist SQL Injection?

A

SQL-Injection tritt auf, wenn Benutzereingaben direkt in SQL-Abfragen übernommen werden, ohne sie zu validieren. Dadurch können schädliche Befehle ausgeführt werden.

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

Wie kann man SQL Injection verhindern?

A
  • Verwendung von Prepared Statements.
  • Immer die Eingaben validieren (First Line of Defense).
  • Vermeiden, SQL-Quelltext direkt an den Server zu senden.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Welche vier Integritätsbedingungen gibt es in Datenbanken und wie werden sie sichergestellt?

A

Bereichsintegrität:
* Attribute sind nur gültig, sofern sie einen bestimmten Wertebereich haben.
* Sicherstellung: Datentypen der Attribute.

Entitätsintegrität:
* Jeder Datensatz ist eindeutig definiert.
* Sicherstellung: Primärschlüssel.

Referentielle Integrität:
* Beziehungen zwischen Tabellen müssen synchronisiert bleiben.
* Sicherstellung: Fremdschlüssel.

Benutzerdefinierte Integrität:
* Benutzerdefinierte Regeln müssen eingehalten werden.

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