Danny,

Because in the first version you pass a fixed length variable, containing
spaces after the 'interesting' part and in the second version you pass a
trimmed literal, which is automatically cast to a variable length string.

Define qcranesub as varchar(12) and you should be alright..


Joep Beckeringh
Software Architect
Pantheon Automatisering B.V.
Heerenveen

"Danny Rodius" <danny.rodius@xxxxxxxxx>

31-10-2018 11:33

Embedded SQL problem

Hi All,



Have a problem in understanding why one method is working and another
not.

Try to declare a cursor with a select .. When field like ...



Fields: craneSub char(10) & qcraneSub char(12)



The two versions

1. Not working



qcraneSub = '%' + %trim(craneSub) + '%';

exec sql

declare c1 cursor for

select *

from AKA0REP

where a0xhcd = :qcraneID and

a0jxce like :qcraneSub;



2. Working



exec sql

declare c1 cursor for

select *

from AKA0REP

where a0xhcd = :qcraneID and

a0jxce like '%' concat trim(:craneSub) concat '%';



Anyone an idea why the first option is not working?



Danny

This thread ...

Follow-Ups:
Replies:

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

This mailing list archive is Copyright 1997-2020 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].