× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



are you saying we should standardize on adding a indicator variable on all host variables?
If you don't want to add a scalar function to each nullcapable column, you should add indicator variables for all column that can return NULL values.

BTW I'd only define columns as NULL capable, if I need to distinguish between a default value and no input.
NULL values need always to be checked separately. (Even though we talk about nanoseconds it is an additional effort)

Mit freundlichen Grüßen / Best regards

Birgitta Hauser

"Shoot for the moon, even if you miss, you'll land among the stars." (Les Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training them and keeping them!"


-----Ursprüngliche Nachricht-----
Von: RPG400-L [mailto:rpg400-l-bounces@xxxxxxxxxxxx] Im Auftrag von Gerald Magnuson
Gesendet: Friday, 27.2 2015 20:22
An: RPG programming on the IBM i (AS/400 and iSeries)
Betreff: Re: SQL -not returning records with null values

we have lots of new tables getting created with allownull, and I don't think that requiring "coalesce" on all columns will fly...

are you saying we should standardize on adding a indicator variable on all host variables?



On Fri, Feb 27, 2015 at 11:44 AM, Birgitta Hauser <Hauser@xxxxxxxxxxxxxxx>
wrote:

1. NULL values are values outside the valid range and must be checked
separately.
2. You can either convert a NULL value into a default value by using a
scalar function COALESCE(YourCol, '') oder IFNULL(YourCol, '') 3. You
can use an indicator variable (defined as 5I 0) that must be specified
immediately after the host variable to receive the value separated
only with a blank (no comma!).
If a NULL value is returned the Indicator Variable is set to -1
otherwise it is set to *ZERO.

SQLCODE <> 100 means:
1. All Records that are correct (SQLCODE = 0) 2. All Records where a
warning is returned (SQLCODE > *Zeros and NOT 100) 3. All erroneous
records (SQLCODE < *Zeros) where no values are returned.
I'm quite sure you'll get the SQLCODE -305 (Indicator variable
required)


Mit freundlichen Grüßen / Best regards

Birgitta Hauser

"Shoot for the moon, even if you miss, you'll land among the stars."
(Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training
them and keeping them!"

-----Ursprüngliche Nachricht-----
Von: RPG400-L [mailto:rpg400-l-bounces@xxxxxxxxxxxx] Im Auftrag von
Gerald Magnuson
Gesendet: Friday, 27.2 2015 17:56
An: rpg400-L@xxxxxxxxxxxx
Betreff: SQL -not returning records with null values

we have been coding our loops as follows:

dow sqlcod <> 100

....fetch records
if sqlcod<> 100
... write subfile, or write report line



evidently, the records with nulls return the 100?

we knew we should have had more records on the display, but when we
changed the if to "sqlcod = 0"
we received the records with null fields.

is this the proper fix, or is something else going on?
--
This is the RPG programming on the IBM i (AS/400 and iSeries)
(RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at http://archive.midrange.com/rpg400-l.


--
This is the RPG programming on the IBM i (AS/400 and iSeries)
(RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at http://archive.midrange.com/rpg400-l.


--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.