[NEWSboard IBMi Forum]

Thema: SQL0030

Hybrid View

  1. #1
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Aber Du Joinst die View mit dem Artikelstamm.
    SELECT * beinhaltet also nicht nur die Felder aus der View sondern auch die Felder aus dem Artikelstamm.

    Entweder musst Du Datenstrukturen für beide Dateien (View und Artikel-Stamm) im Fetch angeben.
    Sofern nur die View benötigt wird, kannst Du auch mit SELECT View.* From View ... arbeiten.

    ... und nach meiner Erfahrung (und ich habe schon das eine oder andere embedded SQL Programm geschrieben) ist dynamsiches SQL nur notwendig wenn die Dateien nicht bekannt sind und dynamisch verwendet werden und das ist bei Anwendern i.d.R. meist nicht der Fall. Damit müssen sich (allenfalls) Toolhersteller rumschlagen.
    Sowohl WHERE-Bedingungen als auch ORDER BY-Anweisungen können über statische Case-Anweisungen dynamisch gesteuert werden.

    Ebenso ist i.d.R. ein SELECT * nicht erforderlich. Wenn man wirklich nur die notwendigen Daten selektiert und nicht jede Menge unnötiger Daten hin- und herschaufelt, kann man einiges an Datenbankenaktivität vermeiden.

    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

  2. #2
    Registriert seit
    Nov 2004
    Beiträge
    331
    Hallo Birgitta,

    dass Du schon "das eine oder andere Programm" geschrieben hast, glaube ich der QUEEN of SQL unbesehen. Vielen Dank für Deine Antwort, ich denke dann ist wohl
    Select
    a.feld1
    a.feld2
    usw
    b.feld1
    b.feld2
    usw
    from Datei A, Artikelstammdatei B
    where v_kdnr = : KDNR AND (V_KOONR = ArtNr)
    sehr viel sinnvoller.

    mfg

    DKSPROFI

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Da du wohl alle Felder aus beiden Strukturen haben willst musst du auch beide Strukturen für die Zielausgabe haben.
    Wobei ein dynamischer "Select *" bei Änderung der View/Tabelle dann wieder nicht funktioniert.
    Warum machst du den dynamisch und nicht mit Hostvariablen statisch?

    Wenn du nicht generell alle Felder benötigst solltest du nur die tatsächlich benötigten Felder aufführen und kannst dann im Fetch auch eine individuelle Struktur mit den Feldern verwenden.
    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

  4. #4
    Registriert seit
    Nov 2004
    Beiträge
    331
    Moin,

    danke für Eure Antworten, jetzt sehe ich klarer.

    mfg


    DKSPROFI

Berechtigungen

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