[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Oct 2003
    Beiträge
    192
    Hi,

    Dank schneller PMR Hilfe habe ich die Lösung:

    Seit V5R3M0 muss man statt dem DYNAMIC Scroll von V5R2
    jetzt ASENSITIVE SCROLL definieren.

    Zu finden in den Benutzeranmerkungen der Releasedokumentation.


    3.44.3 DYNAMIC keyword handled as if SENSITIVE DYNAMIC has been
    specified

    For V5R3, the sensitivity and scrollability attributes that can be
    specified in DECLARE CURSOR and in the ATTRIBUTES clause are being
    expanded to more closely match what other DB2 UDB platforms support.
    This change exposed an incompatibility between what is done on the
    iSeries and what is specified in the SQL standard.

    In releases prior to V5R3, the DYNAMIC keyword modified a scrollability
    option, and indicated that a scrollable cursor can be used for updates.
    In the SQL standard the DYNAMIC keyword modifies a sensitivity option.

    For V5R3, the DYNAMIC keyword will be handled as if SENSITIVE DYNAMIC
    had been specified. For existing applications that specify DYNAMIC
    SCROLL, this will have the desired effect of specifying a scrollable
    cursor that can be used for updates.

    These changes will cause the following compile-time and runtime
    differences in V5R3:

    * The syntax INSENSITIVE DYNAMIC SCROLL will not be allowed in V5R3.
    The SQL precompiler will signal an error at compile time.
    * A cursor declared as DYNAMIC SCROLL in V5R2 is ASENSITIVE. In V5R3,
    it will be SENSITIVE. The difference between the two is that an error
    is signaled for a SENSITIVE cursor if a sensitive cursor cannot be
    implemented. For an ASENSITIVE cursor, an insensitive cursor is
    implemented and no error is signaled.
    * If a cursor was created in a prior release declared as DYNAMIC SCROLL
    and the query implementation would require the creation of a
    temporary result table, a runtime error will be signaled. Conditions
    that require the creation of a temporary result table are listed in
    messages CPI4324 and CPI4325 in message file QCPFMSG.



    Wann ist eigentlich endlich Freitag ?

    Rince

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.967
    Wenn Du DYNAMIC weggelassen hättest, hättest Du weder unter V5R2 noch unter V5R3 Probleme bekommen.

    Dynamic bewirkt, dass keine temporären Objekte (Ergebnistabellen keine temporären Indices) gebildet werden, sondern immer auf den echten Tabellen mit den echten Daten gearbeitet wird. Die Arbeit mit LIVE-Daten ist erforderlich, wenn der Cursor upgedatet werden soll. Da Du jedoch mehrere Dateien miteinander verbindest, kann der Cursor nie upgedated werden, also sind auch keine LIVE-Daten erforderlich.

    Im Umkehrschluss heißt das:
    Dynamic muss nur dann in Verbindung mit einem Scroll Cursor angegeben werden, wenn die Ergebnissätze fortgeschrieben werden sollen, also irgendwo im Programm ein Update oder Delete mit WHERE CURRENT OF Cursor angegeben wurde.

    Die Angabe von ASENSITIVE bewirkt, dass je nach dem wie das SQL-Statement optimiert der Cursor entweder SENSITIVE (basierend auf LIVE-Daten) oder INSENSITIVE (temporäre Ergebnistabellen werden erstellt) geöffnet wird.

    Birgitta
    Birgitta Hauser

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

  3. #3
    Registriert seit
    Mar 2002
    Beiträge
    5.406
    ... soll das jetzt heißen, dass ihr einen Releasewechsel ohne IPL hinbekommen habt??? Respekt, Respekt!!!

    Zitat Zitat von Rincewind
    Hi,

    Ein einwandfrei funktionierendes Programm läuft (ohne dass jemand was geändert hat) nicht mehr.

    Haben das Problem natürlich bei mehreren SQL Programmen, die mit Scroll Cursor laufen. Bewusstes PTF einspielen hat nicht stattgefunden, ebensowenig ein IPL.

    Dank schneller PMR Hilfe habe ich die Lösung:

    Seit V5R3M0 muss man statt dem DYNAMIC Scroll von V5R2
    jetzt ASENSITIVE SCROLL definieren.

    Wann ist eigentlich endlich Freitag ?

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

  4. #4
    Registriert seit
    Oct 2003
    Beiträge
    192
    Wie so oft wurde der Update Teil dieses einen Cursors im laufe der Entwicklung entfernt

    @Bender
    Wir sind eben unschlagbar ^^

    @Realität: Nein wir haben das Programm nur nie gewandelt nach Releasewechsel (bis eben letzte Woche). Anscheinend hat der Releasewechsel das Objekt auch nicht "umgestellt". Was ja an sich positiv ist, da das Objekt nun nicht mehr funktionierte.... mir aber grundsätzlich zu denken gibt was die Aktualität mancher Programme angeht die wir seit Jahren nicht gewandelt haben....



    Rince

    P.s. Zusätzlich wollten wir ursprünglich mit dem Dynamic vermutlich erreichen, dass die Leute immer die sich stetig verändernden Livedaten im Zugriff haben statt den Daten die sie in einer temporären Ergebnistabelle eventuell noch haben

    Wie dem auch sei... mein Tag ist nun entspannter :-)

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
  •