3. Stored Procedures und PL/SQL



Ähnliche Dokumente
Gesicherte Prozeduren

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

4D Server v12 64-bit Version BETA VERSION

2. Datenbank-Programmierung

Internet Explorer Version 6

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee Berlin Tel.:+49(0) Fax.:+49(0)

Prozedurale Datenbank- Anwendungsprogrammierung

Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Lokale Installation von DotNetNuke 4 ohne IIS

Was meinen die Leute eigentlich mit: Grexit?

Übersicht. Was ist FTP? Übertragungsmodi. Sicherheit. Öffentliche FTP-Server. FTP-Software

Installationsanleitung WibuKey Treiber

BitDefender Client Security Kurzanleitung

Direktes Versenden von Listen, z.b. Die Liste der Personalkosten (zpkost)

desk.modul : ABX-Lokalisierung

Oracle APEX Installer

DB2 Kurzeinführung (Windows)

Installation der SAS Foundation Software auf Windows

Verwendung des IDS Backup Systems unter Windows 2000

easysolution GmbH easynet Bessere Kommunikation durch die Weiterleitung von easynet-nachrichten per nach Hause

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

NTR-Support Die neue Fernwartung

Grundlagen von Python

Professionelle Seminare im Bereich MS-Office

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten

Bitte geben Sie hier den Benutzer cubusadmin und das gleichnamige Passwort ein.

INHALT 1. INSTALLATION DES V-MODELL XT UNTER WINDOWS 7 2. INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA

OP-LOG

Kurzanleitung MAN E-Learning (WBT)

Virtual Private Network

Zeichen bei Zahlen entschlüsseln

Version 0.3. Installation von MinGW und Eclipse CDT

e-books aus der EBL-Datenbank

Version 1.0 [Wiederherstellung der Active Directory] Stand: Professionelle Datensicherung mit SafeUndSave.com. Beschreibung.

Installationsvoraussetzungen

Artikel Schnittstelle über CSV

Powermanager Server- Client- Installation

Wählen Sie bitte START EINSTELLUNGEN SYSTEMSTEUERUNG VERWALTUNG und Sie erhalten unter Windows 2000 die folgende Darstellung:

Anwenderleitfaden Citrix. Stand Februar 2008

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Nicht über uns ohne uns

Guide DynDNS und Portforwarding

Übungen zur Softwaretechnik

Statuten in leichter Sprache

Information zum SQL Server: Installieren und deinstallieren. (Stand: September 2012)

Ablaufbeschreibung Einrichtung EBICS in ProfiCash

Abituraufgabe zur Stochastik, Hessen 2009, Grundkurs (TR)

Installation eblvd (Fernwartung)

Sie finden im Folgenden drei Anleitungen, wie Sie sich mit dem Server der Schule verbinden können:

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Modul 2: Automatisierung des Posteingangs - Regel- und Abwesenheits-Assistent

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis

Lehrer: Einschreibemethoden

Internet online Update (Internet Explorer)

Lernziele: Ausgleichstechniken für binäre Bäume verstehen und einsetzen können.

1. Konfiguration Outlook 2007 MAPI (mit Autodiscover).

DCOM??? Seite 1

Automatische Installation (wenn das SSO-Applet nicht vorhanden ist)! Abbildung 1:Auswahldialog für Installationslaufwerk

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

PCC Outlook Integration Installationsleitfaden

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Reporting Services und SharePoint 2010 Teil 1

AUTOMATISCHE -ARCHIVIERUNG. 10/07/28 BMD Systemhaus GmbH, Steyr Vervielfältigung bedarf der ausdrücklichen Genehmigung durch BMD!

Die Post hat eine Umfrage gemacht

ARCWAY Cockpit. Professional Upgrade. von 3.0 auf 3.1

Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version Optional einen DHCP Server.

Backup der Progress Datenbank

Howto. Einrichten des TREX Monitoring mit SAP Solution Manager Diagnostics

Dieses Dokument soll dem Administrator helfen, die ENiQ-Software als Client auf dem Zielrechner zu installieren und zu konfigurieren.

IMAP Backup. Das Programm zum Sichern, Synchronisieren, Rücksichern und ansehen von gesicherten Mails. Hersteller: malu-soft

Java Kurs für Anfänger Einheit 5 Methoden

Eine Anwendung mit InstantRails 1.7

Leichte-Sprache-Bilder

pro4controlling - Whitepaper [DEU] Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9

Download unter:

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

Anwendungshinweis Nr. 12. Wie konfiguriere ich redundante Serververbindungen

Datensicherung EBV für Mehrplatz Installationen

Synchronisations- Assistent

Konvertieren von Settingsdateien

S7-Hantierungsbausteine für R355, R6000 und R2700

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

1 Belastung. 1.1 Standortbestimmung 1.2 Belastungsvorhersage 1.3 Favoriten

Einspielanleitung für das Update DdD Cowis backoffice DdD Cowis pos

Whitepaper. Produkt: combit Relationship Manager. Einbindung externer FiBu-/Warenwirtschaftsdaten. combit GmbH Untere Laube Konstanz

Anleitung zur Benutzung des jobup.ch Stellensuchendekontos

Vgl. Oestereich Kap 2.7 Seiten

Wie können Sie eine Client Lizenz wieder freigeben?

Teil 1: IT- und Medientechnik

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Wie richten Sie Ihr Web Paket bei Netpage24 ein

1. Weniger Steuern zahlen

Avira Support Collector. Kurzanleitung

Transkript:

3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln zurückgeliefert. Oft hat man jedoch Operationen innerhalb einer Anwendung, die eine hohe Last auf der Datenbank erzeugen und eine geschlossene Einheit ohne Benutzerinteraktion darstellen. Für solche Operationen ist es sinnvoll, sie auf der Server-Maschine als sogenannte gesicherte Prozedur (stored procedure) abzulegen und sie durch eine einzelne Nachricht vom Client aus aufzurufen. Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 44

Client Anw. Programm DB Transaktion DB Server DB Host Datenbank Anwendung ohne gesicherte Prozedur: Anwendung mit gesicherter Prozedur: Anw. Programm Transaktions aufruf DB Server DB Transaktion Datenbank Client DB Host Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 45

Vorteile gesicherter Prozeduren höhere Effizienz Ausführung der Prozeduren unter Kontrolle des DBS Strukturierungsmittel für größere Anwendungen zentrale Kontrollen der Prozeduren, redundanzfreie Darstellung relevanter Aspekte der Anwendungsfunktionalität einfache Wiederverwendbarkeit Rechtevergabe für Prozeduren aktive Aspekte: gesicherte Prozeduren im Aktionsteil von Triggern Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 46

Teile und Aspekte gesicherter Prozeduren (1) Eine vollständige Anwendung mit einer gesicherten Prozedur hat stets zwei Teile: Die Prozedur selbst, die auf der Servermaschine läuft, und das eigentliche Anwendungsprogramm, das auf der Client-Maschine läuft. Anwendungen mit gesicherten Prozeduren haben die Restriktion, dass: sämtliche Eingabedaten zum Zeitpunkt des Aufrufs vom Anwendungsprogramm an die gesicherte Prozedur übergeben werden müssen, und dass Ergebnisdaten erst dann an das Anwendungsprogramm zurückgegeben werden, wenn die Prozedur vollständig abgearbeitet wurde. Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 47

Teile und Aspekte gesicherter Prozeduren (2) Während der Prozedurausführung ist keine Interaktion zwischen Anwendungsprogramm und gesicherter Prozedur möglich. Man kann gesicherte Prozeduren typischerweise in jeder vom DB-System unterstützten Wirtssprache schreiben. Häufig kommen hierfür prozedurale SQL-Erweiterungen zum Einsatz, beispielsweise PL/SQL (Oracle). Aspekte von gesicherten Prozeduren: Implementierung (Server) Deklaration (Server) Nutzung (Client) Die Unterscheidung zwischen Implementierung und Deklaration ist nur dann von Bedeutung, wenn keine prozedurale SQL-Erweiterung verwendet wird. Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 48

Bemerkungen zu gesicherten Prozeduren Gesicherte Prozeduren können in mehreren Wirtssprache geschrieben werden. Oracle z.b. unterstützt gesicherte Prozeduren in PL/SQL und Java (und prinzipiell auch in C). Eine Applikation muss nicht in der gleichen Sprache entwickelt sein wie die gesicherten Prozeduren, die von ihr genutzt werden. Die Prozedur wird übersetzt und auf dem Server installiert. Eine gesicherte Prozedur darf SQL-Anweisungen enthalten. Nutzung der gesicherten Prozedur über die SQL CALL-Anweisung. Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 49

3. Stored Procedures und PL/SQL Client-Seite gesicherter Prozeduren Client-Seite gesicherter Prozeduren 1. Deklarieren, Alloziieren und Initialisieren von Datenstrukturen und Variablen 2. CONNECT mit der Datenbank 3. Aufruf der gesicherten Prozeduren durch SQL CALL 4. DISCONNECT Gesicherte Prozeduren und Transaktionen: Prinzipiell können gesicherte Prozeduren COMMIT und ROLLBACK ausführen. Besser: Transaktionssteuerung durch die Applikation Kein COMMIT und ROLLBACK in gesicherten Prozeduren. Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 50

3. Stored Procedures und PL/SQL Client-Seite gesicherter Prozeduren Die gesicherte Prozedur führt folgendes aus: 1. Sie nimmt die Parameter der Client-Applikation entgegen, 2. führt die in ihr enthaltenen Operationen in der gleichen Transaktion wie die Client- Applikation aus, 3. führt optional COMMIT oder ROLLBACK Operationen durch und 4. gibt einen Resultats- und Statuswerte an die Client-Applikation zurück. Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 51

3. Stored Procedures und PL/SQL Client-Seite gesicherter Prozeduren Nutzung von gesicherten Prozeduren (Java) Nutzung in JDBC mittels CallableStatement, JDBC-Folien Parameter von gesicherten Prozeduren können sein: Eingabeparameter Ausgabeparameter (gesicherte Prozeduren unterstützen Call by Reference) Sowohl Eingabe- als auch Ausgabeparameter Dies wird bei der Deklaration der gesicherten Prozedur definiert. In JDBC müssen die Eingabeparameter vorher mit setxxx() initialisiert werden. Analog können die Werte für Ausgabeparameter mit getxxx() ermittelt werden. Detaillierte Angaben zu Implementierung und Deklaration von gesicherten Prozeduren mit Hilfe von PL/SQL später Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 52

3. Stored Procedures und PL/SQL Server-Seite bei gesicherten Prozeduren Server-Seite bei externen gesicherten Prozeduren Dies betrifft gesicherte Prozeduren, die in einer externen Sprache wie C, Java (oder anderen unterstützten Sprachen) implementiert sind, keine PL/SQL- Implementierungen. Eine Deklaration für eine gesicherte Prozedur enthält hier typischerweise: Name der Prozedur Modus, Name und SQL-Datentyp für jeden Parameter Externer Name, Pfadangabe für dynamische Bibliothek Implementierungssprache Art der Parameter-Übergabe (bei DB2 z.b. DB2SQL oder JAVA) weitere Angaben, z.b. abgeschirmte Ausführung oder nicht (FENCED) Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 53

3. Stored Procedures und PL/SQL Server-Seite bei gesicherten Prozeduren Parametermodi Modus der Parameter in gesicherten Prozeduren: IN Eingabeparameter OUT Ausgabeparameter INOUT Ein- und Ausgabeparameter Objektrelationale Datenbanksysteme Hochschule Bonn-Rhein-Sieg, WS 2012/13 54