-
Genau so ist erdefiniert
Declare CursorName insensitive....
spricht es müsste doch funktionieren oder?
-
Ist auch "ALWCPYDTA(*YES)" definiert ?
Allerdings ist die "Anzahl Sätze" beim Select eigentlich nicht definiert, sondern nur beim Insert/Update.
-
Hallo,
hast Du eigentlich schon versucht die Anzahl Sätze über GET DIAGNOSTICS unmittelbar nach dem OPEN zu ermitteln?
PHP-Code:
EXEC SQL GET DIAGNOSTICS :MyVar = DB2_NUMBER_ROWS;
Aber vermutlich führt dies zum gleichen Ergebnis wie SQLERR2.
SQL Reference:
DB2_NUMBER_ROWS
If the previous SQL statement was an OPEN or a FETCH which caused the size of the result table to be known, returns the number of rows in the result table. For SENSITIVE cursors, this value can be thought of as an approximation since rows inserted and deleted will affect the next retrieval of this value. If the previous statement was a PREPARE statement, returns the estimated number of rows in the result table for the prepared statement. Otherwise, the value zero is returned.
Birgitta
-
Vielleicht arbeitet der Optimizer von V5R4 besser als früher ?
Ggf. hast du aus Performancegründen einen Index angelegt, so dass SQL diesen nutzt und deshalb nicht weiß, wieviele Sätze denn kommen werden.
Wenn der Optimizer es nicht für nötig hält, die Daten zu kopieren, kann er auch die Anzahl nicht liefern.
-
Das hat was mit der SQE zu tun,
denn wenn ich ein UPPER('X') = 'X' in die WHERE einbaue, klappt alles wieder.
-
Was wahrscheinlich sogar auf die Performance geht.
Durch diese Ergänzung werden wahrscheinlich die Daten wieder kopiert.
Bei kleinen Ergebnistabellen mag das ja noch Sinn machen.
Aber bei großen Datenmengen wirds da eher Probleme bereiten.
Naja, wie gesagt, beim Select habe ich mich noch nie auf die Anzahl verlassen, wenn ich sie nicht selber gezählt habe oder vorher einen COUNT(*) gemacht habe.
Zur Hilfestellung habe ich auch folgendes durchgeführt:
with
MyTemp as (select .....)
,MyCount as (select count(*) as xCount from MyTemp)
select * from MyTemp, MyCount
So habe ich in jedem Satz die Gesamtanzahl Sätze (was mit unter auch zu Berechnungen innerhalb SQL manchmal Sinn macht).
-
Das wäre auch nur ein Lösung für Arme, ich wollte nur wissen wieso es auf einmal nicht mehr funktioniert. Ich werde um den count nicht herum kommen.
Similar Threads
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 04-05-07, 22:06
-
By christian_lettner in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 16-11-06, 11:15
-
By FNeurieser in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 11-10-06, 15:53
-
By Kaufmann in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 28-06-06, 15:11
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 01-06-06, 10:43
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks