-
Das Problem bei solchen Konstrukten ist hier der Optimizer.
Durch die Whereklausel nimmt man an, dass diese in genau der vorgegebenen Reihenfolge abgefragt wird so dass der Datenfehler eigentlich nicht auftreten dürfte.
Der Optimizer dreht aber intern die Abfrage häufig um, so dass es zu unerwarteten Datenfehlern kommt.
Leider gibt es hierzu nur 2 Lösungen:
a) dafür sorgen, dass Datenfehler tatsächlich nicht vorkommen
b) die Abfrage auf Zeichen umstellen
and int(substr(sdind, 12, 3)) = int('002')
wird zu
and substr(sdind, 12, 3) = '002'
das ist auf jeden Fall sicherer.
Ist die Herkunft eines Vergleiches ggf. wiederum eine Variable, so musst du diese dann ich Char casten und ggf. formatieren:
- char(myNumVar)
- Digits(myNumVar)
- substr(Digits/char....)
Similar Threads
-
By NEWSolutions Redaktion in forum NEWSolutions artikel
Antworten: 0
Letzter Beitrag: 22-06-14, 08:00
-
By KingofKning in forum IBM i Hauptforum
Antworten: 21
Letzter Beitrag: 26-05-14, 15:31
-
By NEWSolutions Redaktion in forum NEWSolutions artikel
Antworten: 0
Letzter Beitrag: 02-11-13, 10:53
-
By logo_2 in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 28-04-03, 12:51
-
By alex in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 19-04-02, 08:05
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