Embedded SQL - Die Macht von SQL in RPG

Warum sollte man SQL in RPG verwenden, wenn man doch über Record-Level-Access auf die Daten zugreifen kann? Dafür gibt es viele Gründe!

SQL ist eine standardisierte Sprache zur Definition und Manipulation von Daten in relationalen Datenbanken. Alle Datenbank-Hersteller haben sich verpflichtet diesen Standard einzuhalten. In den meisten Programmiersprachen kann nur über SQL auf die Daten zugegriffen werden. Der gleiche SQL-Code kann mit nur minimalen Anpassungen in jede Programmiersprache, in der SQL verwendet
werden kann, übernommen werden. Die Verwendung von SQL ermöglicht es, Programmcode in Datenbankenlogik zu verlegen.

In RPG gibt es z.Zt. ca. 80 Built-In-Functions, während SQL ungefähr das Doppelte aufzuweisen hat. Mit embedded SQL können diese Funktionen direkt in RPG genutzt werden. Mit einem einzigen embedded SQL-Statement können Hunderte oder Tausende von Datensätzen eingefügt, geändert oder gelöscht werden. Verknüpfung von Dateien, Gruppierungen und Summierungen können direkt in einem SQL-Statement hinterlegt werden, wodurch der Source-Code beträchtlich reduziert werden kann. Datei-Änderungen erfordern nur dann eine Recompilierung der Module bzw. (Service-)Programme, wenn SELECT * verwendet wurde. Bei Bedarf können SQL-Statements zur Laufzeit on the fly gebildet und ausgeführt werden.

Mit Embedded SQL können auch IFS-Dateien erstellt und mit Hilfe von SQL skalaren Funktionen verarbeitet werden. Mit dem XML-Support (ab Release 7.1.) können auf diese Art und Weise auch XML-Dokumente generiert und bearbeitet werden. Mit embedded SQL können nicht nur Stored Procedures aufgerufen werden, sondern auch aus diesen Prozeduren zurückgegebene Result-Sets verarbeitet werden.

Agenda


  • Überblick
  •  Voraussetzungen
    - Syntax-Einbindung SQL-Statements in RPG
    - (Pre-)Kompilierung
  •  Verwendung von Variablen
    - Host Variablen und Host-Datenstrukturen
    - Indicator Variable - Behandlung von NULL-Werten
  • Verwendung von SQL skalaren Funktionen und Prädikaten ohne Zugriff auf die Datenbank
     
  • Statisches und Dynamisches SQL ohne Cursor
    - Einzel-Satz-Zugriff
    - Massen-Inserts/Updates/Deletes
      
  • Verwendung von SQL Cursor
     - Serielle und Sequentielle Cursor
     - Statisches SQL mit Cursor
            -Single and Multiple Row Fetches
            -Update von Daten über Cursor
    - Dynamisches SQL mit Cursor
            - Fixe Auswahl-Liste
            - Variable Auswahl-Liste

  • Error-Handling über SQLCODE oder SQLSTATE
  •  Verarbeitung von Stored Procedures mit Result Sets
  • Verarbeitung vonLarge Objects
     - LOB/XML Spalten und Dokumente
     - Erstellen und Verarbeiten von IFS-Dokumenten mittels Embedded SQL
  • Performance-Betrachtungen

Die einzelnen Punkte können vom Kunden auch individuell ausgewählt und zusammengestellt werden.

Vorkenntnisse


RPGIV Programmier-Erfahrung und SQL Grundkenntnisse.

Es ist zu empfehlen, dass die Teilnehmer zunächst den Kurs professionelle SQL-Abfragen + DML absolvieren.

Anwendungsbeispiele aus dem Seminar


Der enorme Sprachumfang von SQL mit seinen Built-in-Functions bietet unzählige Möglichkeiten, RPG-Programme effektiver zu machen und ihre Performance entscheidend zu verbessern.     

Machen Sie sich selbst ein Bild: Die unten angehängten Original-Seminarfolien aus dem Embedded-SQL-Seminar zeigen Beispiele für spannende SQL-Lösungen, die Ihnen Arbeit und Programmierzeit sparen können.
 


Zeitdifferenz ermitteln




Nächste Bestellnummer ermitteln

 

 


Umsatz pro Kunde / Jahr anzeigen

 


Reorganisationsprogramm "Jahresumsatz sichern"



Teildatei ins IFS kopieren




Dauer und Preis


3 Tage à 8 Stunden.
Die Gebühren betragen 1.520,00 EUR + MwSt.

In dem 3-tägigen Kurs sind die Verarbeitung von Stored Procedures mit Result Sets und die Verarbeitung von Large Objects und XML-Dokumenten integriert.

Arbeitsumgebung der Schulungsteilnehmer


Toolmaker stellt die für die Schulung notwendige einheitliche Lern- und Arbeitsumgebung für die Teilnehmer auf Notebooks bereit.

Das Arbeiten mit unterschiedlichen Arbeitsumgebungen, Software-Ständen oder Berechtigungen kostet Zeit. Daher kann nur in Ausnahmefällen (bitte um Absprache) das eigene Notebook verwendet werden. Darauf sind die folgenden Software-Installationen notwendig:

  1. Für alle SQL Schulungen - IBM i Access (vormals Client Access), mit voller Berechtigung für die Datenbanken-Optionen innerhalb des System i Navigators. Vorzugsweise sollte die englische Version (für Release 7.1) verwendet werden.
  2. Für SQL-Abfragen kann auch das Nachfolge-Produkt Access Client Solution (ACS) verwendet werden. Für SQL-Performance Analysen, Datenbanken-Objekte und SQL Programmierung wird Client Access bis zur endgültigen Fertigstellung von ACS weiterhin benötigt.
  3. Für alle RPG Schulungen sollte RDp (neueste Version aktuell 9.5.1) installiert sein, vorzugsweise ebenfalls auf englisch. Für die Kodierung der Beispiele kann notfalls auch eine 5250 Emulation (z.B. aus IBM i Access, ACS oder RDi) verwendet werden. Eine 5250 Emulation wäre zur Ausführung (und ggf. Debugging) der Beispiele wünschenswert.              

Die Ausgestaltung der Arbeitsumgebung bei Inhouse-Schulungen wird individuell abgesprochen.

Anmeldung

Page

Hier finden Sie unsere Schulungs-AGB

Ihre Buchung wird von Toolmaker schriftlich bestätigt. Sie ist erst mit dieser schriftlichen Auftragsbestätigung verbindlich. Wenn Sie direkt mit uns sprechen möchten: 08191-968-0

Termine

25.02.-27.02.2019
Ort: Kaufering

21.10.-23.10.2019
Ort: Kaufering

auf Anfrage: 08191-968-0

Schulungskalender
Alle Schulungen finden Sie hier im Überblick.

Individuelle Schulungen
Schulungen können kundenindividuell beliebig neu zusammengestellt werden. Bei kundenindividuellen Schulungen ist eine Teilnehmerzahl zwischen 4 und 8 Personen optimal.

Übungen sind jeweils in die Schulungen integriert. Bei den Zeitangaben wird von einem Schulungstag mit 8 Stunden ausgegangen. Auch die Zeiten können kundenindividuell angepasst werden.

Hinweise zur möglichen inhaltlichen Ausgestaltung individueller Schulungen finden Sie im Schulungsprogramm.

Hotelreservierung
Eine Hotelreservierung können Sie bequem hier vornehmen.