[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    May 2005
    Beiträge
    103

    Kommentar in SQL-Statement setzen

    Hallo zusammen,

    ich habe ein recht großes SQL-Insert-Statement in meinem RPGLE-Programm (Freiformat) und würde ein paar der SQL-Zeilen gerne kommentieren.

    Kann ich diese bedenkenlos mit // einbinden - wie im RPGLE-Code auch - oder funktioniert dies anders??

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    SQL-Kommentare mit --

    exec sql
    select ... -- Diverses Felder
    from file -- Hauptdatei
    where ... -- Auswahl
    order by -- Sort ;
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    May 2005
    Beiträge
    103
    Vielen Dank für die prompte Antwort !!!!

  4. #4
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    /* Kommentar */ sollte auch funktionieren.

    Im Gegensatz zu -- kann man bei /* */ in der gleichen Zeile nochmals SQL-Code angeben.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  5. #5
    Registriert seit
    May 2005
    Beiträge
    103
    Danke für die Antwort Birgitta.

    Habe inzwischen durch Probieren herausgefunden, dass auch die Kommentare mit // eingeleitet, als solche erkannt werden.

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Wobei // nur für Free-RPG gilt.
    -- funktioniert aber in allen SQL-Umgebungen, auch z.B. in QMQRY-Objekten.
    /* ... */ funktioniert ab V5R1, sollte aber nach Möglichkeit nicht verwendet werden.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  7. #7
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Zitat Zitat von Fuerchau Beitrag anzeigen
    /* ... */ funktioniert ab V5R1, sollte aber nach Möglichkeit nicht verwendet werden.
    Warum?
    Ich habe in keiner der vielfältigen Referenzen einen Hinweis darauf gefunden, dass /* */ nicht verwendet werden sollte.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Wenn du es auf die DB2 beschränkst, stimme ich zu, allerdings gilt dies nicht für alle SQL-Dialekte.

    Da /* über mehrere Zeilen eben bis zum */ gilt, gibts eher gedankliche Probleme, da der SEU ja nun mal dies nicht optisch unterstützt.
    Andere Editoren sind da meist komfortabler, so dass man Fehler in der Kommentierung besser erkennen kann.

    Ausserdem gibts da noch ein (kleines) Problem.
    Wenn ich z.B. /*-Kommentare per ODBC verwende, sind diese beim Senden an die AS/400 eingebettet. "--"-Kommantare werden automatisch vom ODBC/OLEDB-Treiber entfernt.

    Ich habe noch nicht probiert, wie das im eingebetteten SQL aussieht.
    Wenn man dann mit verteilten Datenbanken (WRKRDBDIRE) arbeitet könnte es sein, dass der /*-Kommentar an die Ziel-DB mit übermittelt wird und dort dann nicht verstanden wird.

    PCSACC/400 hatte da nämlich auch mal ein Problem, dass eben der /*-Kommentar über die Schnittstelle (WRKREGINF) an das Programm weitergegeben wurde und nicht erkannt wurde.
    Wie andere. ähnliche Programme reagieren, entzieht sich mir.

    Wie gesagt:
    "--"-Kommentare sind sicherer.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  9. #9
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    soweit ich orientiert bin, unterstützt ANSI SQL sowohl den C Style mit /* mein Kommentar */ als auch -- mein Kommentar
    wobei letzterer dann bis Zeilenende geht.
    Was da ein Treiber oder irgendeine Software drausmachen, dafür kann SQL nix! Was da die Sicherheit der Verwendung angeht, ist die -- Variante eher zweischneidig, weshalb einige Implementierungen hinter -- ein Leerzeichen fordern. /* */ ist wohl gerade wg. SQL Compliance in DB2/400 aufgenommen worden.

    mein Fazit: gutes Design kommt (meist) mit wenig Kommentaren aus und welche Syntax man dann wählt, ist eigentlich Banane.

    D*B

    Zitat Zitat von Fuerchau Beitrag anzeigen
    Wenn du es auf die DB2 beschränkst, stimme ich zu, allerdings gilt dies nicht für alle SQL-Dialekte.

    Da /* über mehrere Zeilen eben bis zum */ gilt, gibts eher gedankliche Probleme, da der SEU ja nun mal dies nicht optisch unterstützt.
    Andere Editoren sind da meist komfortabler, so dass man Fehler in der Kommentierung besser erkennen kann.

    Ausserdem gibts da noch ein (kleines) Problem.
    Wenn ich z.B. /*-Kommentare per ODBC verwende, sind diese beim Senden an die AS/400 eingebettet. "--"-Kommantare werden automatisch vom ODBC/OLEDB-Treiber entfernt.

    Ich habe noch nicht probiert, wie das im eingebetteten SQL aussieht.
    Wenn man dann mit verteilten Datenbanken (WRKRDBDIRE) arbeitet könnte es sein, dass der /*-Kommentar an die Ziel-DB mit übermittelt wird und dort dann nicht verstanden wird.

    PCSACC/400 hatte da nämlich auch mal ein Problem, dass eben der /*-Kommentar über die Schnittstelle (WRKREGINF) an das Programm weitergegeben wurde und nicht erkannt wurde.
    Wie andere. ähnliche Programme reagieren, entzieht sich mir.

    Wie gesagt:
    "--"-Kommentare sind sicherer.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

Similar Threads

  1. Dynamisches SQL in einem CL erstellen
    By Sony in forum IBM i Hauptforum
    Antworten: 27
    Letzter Beitrag: 20-07-09, 21:48
  2. SQL - Cursor vernichten ?!?
    By FNeurieser in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 11-10-06, 14:53
  3. SQL .. for update of (RPG embedded SQL)
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 01-06-06, 09:43
  4. SQL Statement
    By juergenkemeter in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 15-11-04, 12:15
  5. SQL Statement
    By Pia in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 18-04-02, 15:24

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •