Remember that SQL does not perform a library list search.
The stored procedure name (the procedure name parameter that is used on the
CREATE PROCEDURE statement) must be in the default collection.
Not true!
Tables, views, indexes and aliases are searched within the default/current
schema when using SQL Naming conventions. When using System Naming
conventions the library list is searched.
Stored procedures and user defined functions are searched within the SQL
path when using SQL Naming conventions. When using System Naming conventions
the library list is searched.
The SQL path can be set by executing the SET PATH Statement. Within the SQL
path multiple schemas/libraries can be listed and it is even possible to
specify the *LIBL special value.
So in your case, you have simply have to set the SQL path correctly.
But there are much more different behaviors between System and SQL naming
conventions, especially if dynamic and/or static SQL statements are
performed within the SQL routines.
For more information you may check the following articles:
SQL versus System Naming - Part I:
http://www.ibm.com/developerworks/ibmi/library/i-sqlnaming/index.html
SQL versus System Naming - Part II:
http://www.ibm.com/developerworks/ibmi/library/i-system_sql2/index.html
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: midrange-l-bounces@xxxxxxxxxxxx
[mailto:midrange-l-bounces@xxxxxxxxxxxx] Im Auftrag von fbocch2595@xxxxxxx
Gesendet: Thursday, 18.7 2013 18:51
An: midrange-l@xxxxxxxxxxxx
Betreff: SQL0444 work around?
Hi Folks, when running stored procedures I'm getting the SQL0444 msg and I
was wondering if anyone had a way to avoid having to qualify the library?
SQL0444 - External program &A in &B not found (DB2 UDB for AS/400 SQL):
The SQL0444 is generated on an execute or execute direct when the database
server is unable to locate the program. Remember that SQL does not perform a
library list search. The stored procedure name (the procedure name parameter
that is used on the CREATE PROCEDURE statement) must be in the default
collection.
Thanks, Frank
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at
http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.