Modul 5 - Programmier- und sonstige Schnittstellen Flashcards

1
Q

Agenda

A
  1. SQL Command Line
  2. DB spezifische SQL Schnittstellen
  3. Stored Procedures
  4. Spezielle Interfaces wie „Oracle Application Express“
  5. Programmierschnittstellen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

SQL Prompt Schnittstellen

A

Beispiel 1: SQL Command Prompt (Kommandozeile von der aus man innerhalb einer Datenbank SQL Befehle absetzen kann)

Beispiel 2: Oracle Interfaces
• PL/SQL – prozedurale Programiersprache mit integrierter SQL
Abfragesprache
• kein API (wie bspw. ODBC oder JDBC)
• Kann in Script ablaufen oder in Stored Procedure
• Syntax Check während Kompilierung
• Unterstützt werden Variablen, Bedingungen, Schleifen und
Ausnahmebehandlungen.
• Standardisiert durch ANSI-Gremium

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

Stored Procedures

A

• Sammlung von wiederkehrenden SQL Anweisungen zusammengefasst in
einer Prozedur
• Nutzung von Übergabeparametern
• Werden üblicherweise in der Datenbank im Data Dictionary gespeichert
• Ausführung auf dem DB Server – nicht auf dem Client
• Extrem schnell
• Sicher ( „Grant DELETE, UPDATE oder INSERT to…“ nicht nötig)
• Bibliothek wird oft vom Hersteller angeboten
• Aufruf mit einem einzigen CALL oder EXECUTE
• Können von verschiedenen Interfaces aufgerufen werden (SQL, ODBC, …)

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

Stored Procedures Implementierung nach Hersteller

A
DBMS Implementierungssprache
DB2 | SQL PL
Informix | SPL
Oracle | PL/SQL und Java
Microsoft SQL Server | Transact SQL und .NET
MySQL | SQL 2003
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Programmierschnittstellen (Embedded Sql)

A

SQL Statements sind fest im Programm verdrahtet.
• meist mit #SQL oder EXEC SQL gekennzeichnet
• mit einem Precompiler in die Programmiersprache übersetzt
• danach mit Compiler und Loader in eine Executable verwandelt
• Beispiel Embedded SQL for Java

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

Call-Level-Interface

A

Viele DBMS Hersteller bieten eigene CLIs an, die spezifische DB Features unterstützen
• Java-/Open Database Connectivity
• SQL Anweisungen werden als Argumente an die CLI-Prozeduren übergeben
• SQL Statements werden dynamisch zur Laufzeit erstellt durch Übergabe eines SQL String
an die Prozedur
• Fast alle Hersteller unterstützen O-/JDBC

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

ODBC Überblick

A

• Ursprünglich von Microsoft für Windows entwickelt
• ODBC stellt C/C++-Klassenbibliothek zur Verfügung (auch Fortran oder Visual
Basic
• Läuft neben Windows auch auf Linux
• Anwendungsprogramme, die als Datenbankschnittstelle ODBC benutzen, sind
nicht nur als Quellcode, sondern auch in compilierter Form portabel.
• Erst zur Laufzeit des Programms muss entschieden werden, auf welche
Datenbank zugegriffen werden soll
• Dadurch kann man mit mehreren Datenbanken unterschiedlicher Hersteller
gleichzeitig arbeiten.

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

JDBC Überblick

A

• JDBC ist der Name einer von Javasoft/Sun entwickelten SQL/CLI-konformen API
• Ähnlicher Standard wie ODBC
• Ist in zwei Pakete unterteilt:
• java.sql - enthält die grundlegenden Klassen und Schnittstellen.
• javax.sql - stellt erweiterte Funktionalitäten für die Arbeit mit Datenbanken bereit
• Die wichtigsten Klassen und Schnittstellen des Paketes java.sql sind:
• java.sql.DriverManager - bildet den Einstiegspunkt, da der Treibermanager Treiber
registriert und Verbindungen zur Datenbank aufbaut.
• java.sql.Connection - repräsentiert eine Datenbankverbindung.
• java.sql.Statement - ermöglicht die Ausführung von SQL-Anweisungen über eine
gegebene Verbindung.
• java.sql.ResultSet - verwaltet Ergebnisse einer Anfrage in Form einer Relation und
unterstützt den Zugriff auf einzelne Spalten.

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