[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    May 2006
    Beiträge
    129

    SQL Datenstrucktur

    Hallo @ all

    ich erstelle per SQL mit Create Table zur laufzeit einen Tempfile.

    Kann ich diesen nun Dynamisch auslesen?
    Ich fetche diesen File schon in eine Datenstruckturarray.
    Um an die Inhalte zu kommen benötige ich aber den Feldnamen, gibt es hier eine andere möglichkeit zb. über eine Schleife von 1 bis anzahl der Felder und diese irgendwie über einen Index auszulesen.

    Währe sehr dankbar für eine lösung.
    Danke im voraus.

    Steven_r

  2. #2
    Registriert seit
    Apr 2005
    Beiträge
    104
    Sicher, mit zwei Schleifen und einem dynamischen Select in der 2. ist das zu machen.

    In erster Hinsicht würde ich mal die Tabelle QSYS2/SYSCOLUMNS durchlesen, und dann jedes dort genannte Feld mit dem 2. Select dynamisch anspechen. Den String des 2. Selects generierst Du also erst, wenn Du ein Feld eingelesen hast.

    Nachteil: das Verfahren selektiert jedes Feld einzeln, es ergibt also eine recht große Anzahl von Zugriffen, und die SQL-Engine kann das nicht optimieren.

    Wenn Du das verbessern willst, müßtest Du z.B. erstmal den String für das komplette Select zusammenbauen, und ihn dann zum Schluß in einem 3. Schritt ausführen.

    Ich habe neulich erst Kriterien und Bedingungen für gewisse Aktionen variabel hinterlegt und implementiert, im Prinzip genau so, im Rahmen von 2 ineinander verschachtelten Schleifen mit 2 verschiedenen Cursorn und das Ganze in mehreren SQL STORED PROCEDURES bereitgestellt ...

    "Datenstruckturarray..." ?
    Hm, für RPG habe ich da z.Zt. keinen Plan. Dafür ist mein Konzept weniger geeignet.
    Du könntest die Felder damit natürlich umbenennen, aber das geht auch viel einfacher. Beschreib doch mal genauer, was Du brauchst.

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Das ist ein wenig komplizierter, aber SQL gibt da Hilfsmittel:

    mittels "Describe Table ..." bekomme ich ein Resultset über alle Felder.
    Diese kann ich dann dynamisch zum Select aufbauen.

    Mittels einer SQLDA (siehe Handbuch) kann ich dann beim "Fetch My cursur using : MySqlDa" auch Daten dynamisch verarbeiten (allerdings nicht in eine Struktur mit Mehrfachvorkommen.

    In der SQLDA muss ich je Feld eine Unterstruktur mit Feldtyp und Pointer angeben.
    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. RPGLE - SQL
    By christian_lettner in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 16-11-06, 10:15
  2. SQL - Cursor vernichten ?!?
    By FNeurieser in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 11-10-06, 14:53
  3. SQL und OBJLCK
    By malzusrex in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 19-09-06, 11:04
  4. SQL - Fehler
    By Kaufmann in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 28-06-06, 14:11
  5. SQL .. for update of (RPG embedded SQL)
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 01-06-06, 09:43

Berechtigungen

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