Samstag, 6. September 2008

SQL und seine Laufzeitumgebungen

SQL und seine Laufzeitumgebungen


SQL ist nicht gleich SQL. Je nach Umgebung variiert, welcher methodi-
sche Ansatz als „gut“ oder „ungünstig“ angesehen wird.
Im Rahmen des Kurses geht es um „zweckmäßiges“ SQL. Aufbauend
auf dem syntaktischen und theoretischen Basiswissen soll jeder Teil-
nehmer für seine Umgebung entscheiden können, welche konkrete
Ausprägung von SQL-Varianten in seinem Projektumfeld günstig ist.
SQL-Statements lassen sich nach unterschiedlichen Gesichtspunkten
kategorisieren. Dabei finden technische und organisatorische Aspekte
Berücksichtigung:



• Unterscheidung nach Art der Generierung:

⇒ statisches SQL:
select count(*) from emp where deptno = :nr

⇒ dynamisches (natives) SQL:
execute immediate ’select count(*) from emp
where deptno = 10’

• Unterscheidung nach dem Umfeld

⇒ Data Warehouse (DWH) / Decision Support Service (DSS):
select produkt, region, zeitraum, sum(betrag)
from verkauf, produkt, region, zeit where ...
group by produkt, region, zeitraum

• Unterscheidung nach der Ablaufumgebung:

⇒ Interaktiv:
Direkter Datenzugriff durch geschulte Nutzer über interaktive
Front Ends,

⇒ Embedded SQL (ESQL) / OCI:
Datenbankaufrufe aus einer 3GL Programmiersprache, meistens
C oder Cobol,

⇒ ODBC / JDBC:
Kommunikation über datenbankherstellerunabhängige Stan-
dards,

⇒ PL/SQL:
Aufruf von Statements aus Serverprozeduren, welche i. d. R.
wiederum in Applikationen eingebettet sind.
Je nach konkreter Ausprägung der Umgebung treten unterschiedliche
Aspekte der Verarbeitung und Optimierung in den Vordergrund. Diese
Sichtweise wird im Verlauf des Kurses immer wieder aufgenommen.

Keine Kommentare: