[NEWSboard IBMi Forum]

Thema: DQY Problem

Hybrid View

  1. #1
    Registriert seit
    Oct 2003
    Beiträge
    172
    QZDASOINIT wird noch nicht mal aufgebaut bei diesem SQL:
    sqlstring = "SELECT * FROM G72GDEDSD/ENT04P b, G72GDEDSD/ENT03P a left outer join G72GDEDSD/ENT01P c on E3SIT=E1SIT and E3DEP=E1DEP and E3NENP =E1NENP, G72GDEDSD/ENT02P d WHERE E1NENT = E2NENT and E1SIT = E2SIT and E1DEP = E2DEP and E1BCHE = E2BCHE and E3SIT=E4SIT and E3DEP=E4DEP and E3NENP = E4NENP and E3SIT= 'FF' and E3DEP ='LEICA'and E3NEXT like ('%'||" + Eingabe + "||'%')"

    Bei diesem SQL was funktioniert wir auch ein QZDASOINIT aufgebaut.

    SELECT * FROM G72GDEDSD.Ent03P WHERE E3SIT= 'FF' and E3DEP ='LEICA' and E3NEXT like ('%'||" + Eingabe + "||'%')

    Hier funktinoiert auch das Like ohne Probleme.

  2. #2
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.014
    Bei Deinem ersten SQL hast Du als Trennzeichen das "/" zwischen Bibliothek und Datei. Beim zweiten SQL verwendest Du die SQL-Notation "."

    Versuche es beim ersten auch mal mit "."

    Außerdem solltest Du Dir wirklich den "concat" verwenden, anstatt die Pipes.

    Gruß,
    KM

  3. #3
    Registriert seit
    Aug 2001
    Beiträge
    2.931
    ... außerdem ist die JOIN syntax nicht korrekt:

    Richtig ist:
    Code:
    From Datei1 ????? Join Datei2 on ...
                ????? Join Datei3 on ...
                ????? Join Detei N on ...
    Die Fragezeichen stehen für jede beliebige Join-Art (INNER, LEFT, RIGHT OUTER, CROSS, FULL, EXCEPTION, RIGHT EXCEPTION) die Punkte für die Verknüpfung der Schlüssel-Felder

    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

  4. #4
    Registriert seit
    Oct 2003
    Beiträge
    172
    Fehler gefunden!!!!!!!

    DANKE KM

    Fehlerursache = "/" mit "." funktioniert dies ohne Probleme!!!!!!!

  5. #5
    Registriert seit
    Oct 2003
    Beiträge
    172
    Wieso soll mein SQL falsch sein Birgitta?
    Ist doch richtig auf gebaut, funktioniert jetzt auch nach dem ich die "/" gegen den "." ausgetauscht habe.

    Danke noch mal an ALLE!!!!

  6. #6
    Registriert seit
    Aug 2001
    Beiträge
    2.931
    Zitat Zitat von Miles Beitrag anzeigen
    Wieso soll mein SQL falsch sein Birgitta?
    Ist doch richtig auf gebaut, funktioniert jetzt auch nach dem ich die "/" gegen den "." ausgetauscht habe.

    Danke noch mal an ALLE!!!!
    Ich war der Meinung, dass man die unterschiedlichen Verknüpfungstechniken nicht mischen kann.

    ... unabhängig davon sollte die Auflistung der Tabellen/Views in der From-Anweisung und die Verknüpfung in den Where-Bedingungen vermeiden und schon garnicht mischen!
    Wie leicht vergisst man eine Where-Verknüpfung und wundert sich dann plötzlich, dass die Abfrage ewig läuft und die Platte zumüllt, weil das Ergebnis karthesisches Produkt ist, d.h. jeder Satz mit jedem Satz verknüpft wird.

    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

  7. #7
    Registriert seit
    Mar 2002
    Beiträge
    5.369
    ... naja, ob ich eine where Bedingung, oder eine join Bedingung vergesse, ist in der Asuwirkung ziemlich ähnlich und erfordert dieselbe Menge an Dappigkeit. Kritischer ist das beim outer join, da muss man aufpassen, dass man sich nicht in der Where Bedingung Sätze wg. Null Values ausschließt wegen derer man extra dem outer join gemacht hat.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.704
    Das mit dem Mischen ist mir jetzt bei V6R1 auch aufgefallen, dass SQL jetzt plötzlich Syntaxfehler meldet, was bis V5R4 noch ging, Beispiel (war nicht mein SQL):

    select A.f1, B.f2, C.f3 ...
    from File1 A, File2 B
    inner join File3 c on a.key=c.key
    where ...
    and a.key = b.key

    Sobald man Join-Konstrukte verwendet ist das simple Aufzählen von Dateien nicht mehr erlaubt!
    Aber wer macht das schon so ....
    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

Similar Threads

  1. Problem mit Java-Methoden Aufruf aus ILE RPG?
    By Stoeberl in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 10-01-07, 10:58
  2. Problem mit Steuerzeichen in Datenbank?
    By Stoeberl in forum NEWSboard Programmierung
    Antworten: 11
    Letzter Beitrag: 26-10-06, 10:07
  3. Authorization Problem nach ändern der Primary Group
    By ChrisX in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 11-10-06, 15:31
  4. Merkwürdiges Problem in VRPG
    By Flappes in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 06-10-06, 08:39
  5. IPDS Drucker Problem
    By KL_RPG in forum NEWSboard Drucker
    Antworten: 5
    Letzter Beitrag: 12-05-06, 15:07

Berechtigungen

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