-
SQL Abfrage
Hallo,
habe hier ein Darstellungsproblem bei Ausführung einer SQL Anweisung.
Bei Ausführung von "SQL Prozeduren" über den Navigator oder bei JDBC / ODBC Zugriff erhalte ich bei einem (bestimmten) numerischen Feld (numeric 2,0, not Null, default 0) eine 0.
Setze ich auf'm greenscreen eine SQL Anweisung ab, erhalte ich für selbes Feld, (selber Satz) "nix", d. h. die Spalte ist in der Anzeige nach Abfrage leer. Wende ich hier ein DIGITS(FELD), ein IFNULL(FELD, 5) oder andere skalare Funktionen an, erhalte ich eine 0.
Woran ist denn hier die Darstellung geknüpft? Ist das konfigurierbar?
Zudem beschäftigt mich der Hilfetext zum "Editcode". Wenn dort steht "keine Nullinhalte", kann man das dann "not null" gleichsetzen? Und woher wird dann ein möglicherweise erforderlicher default Wert angezogen?
Gruß
Asti
-
 Zitat von Asti
Woran ist denn hier die Darstellung geknüpft? Ist das konfigurierbar?
Zudem beschäftigt mich der Hilfetext zum "Editcode". Wenn dort steht "keine Nullinhalte", kann man das dann "not null" gleichsetzen? Und woher wird dann ein möglicherweise erforderlicher default Wert angezogen?
Ob man die Darstellung der Ergebnisse im interaktiven SQL (Greenscreen) konfigurieren kann ? Gute Frage, ich glaube nicht.
Wenn Du die SQL-Abfrage aber in ein QueryManagerQuery (QMQRY) einträgst, und dann mit F13 auf das Report-Layout umschaltest, dann kannst Du zumindest dort die Darstellung etwas genauer steuern.
In jedem Fall geht es IMO nur um die Darstellung, und auch wenn die 0 nicht dargestellt wird, sondern nichts dasteht (Blank), rechnet die iSeries dennoch mit der Zahl 0.
Ich hoffe, daß Du dies alles nicht mit dem SQL-NULL verwechselst, dem Sonderfall, daß in der Datenbank gar nichts gespeichert ist. Mit SQL-NULL (oft dargestellt als '-' oder '~') kann man jedenfalls nicht rechnen. Man darf Felder, die auf SQL-NULL kommen können, jedenfalls nicht unbedarft in Formeln verwenden, sondern muß sich dann erst um einen Ersatzwert kümmen (0 oder 1 oder so)
-
STRSQL kann den EDTCDE auswerten und eine entsprechende Darstellung wählen.
Der EDTCDE wird aber nur z.B. bei DSPF/PRTF's übernommen, wenn das Feld über REFFLD referenziert wird.
Standard SQL (wie JDBC) kennt das gar nicht.
Da das Feld mit "not NULL" deklariert ist, kann nie eine NULL drinstehen und IFNULL liefert immer den Inhalt.
Similar Threads
-
By AS400-Anfänger in forum NEWSboard Programmierung
Antworten: 6
Letzter Beitrag: 27-06-06, 13:18
-
By behmer in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 29-05-06, 12:52
-
By steven_r in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 17-05-06, 15:49
-
By cbe in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 08-06-05, 16:21
-
By juergenkemeter in forum NEWSboard Programmierung
Antworten: 5
Letzter Beitrag: 17-11-04, 14:32
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