Precomplie of C program on AIX 5.1 with DB2 UDB V8.1

Dave Stritzinger

Precomplie of C program on AIX 5.1 with DB2 UDB V8.1
List members,

We currently have a Data Warehouse project using DB2 UDB V8.1 on a
Regatta running AIX V5.1. The programmers are starting to write C programs
to access data on the local AIX DB2 and also to access data stored in DB2 on
OS/390. Myself and most of the DBA's are "old" mainframe folks who are
familiar with how that world works. In the mainframe world, the programmers
do not have authority to do binds or execute SQL against the DB2 tables. To
access DB2 tables through let's say SPUFI, they will have authority through
a secondary auth id. The COBOL programs are kept in Endevor and after the
COBOL programs are compiled, an Endevor process is used to bind the plans
using a secondary auth id that has all the needed authority, the programmers
do not have authority to use this secondary auth id.

Looking at the V8.1 command reference for precompile, the person
doing the precompile needs at least one of the following authorities:

1) SYSADM or DBADM - do not want to do this at all
2) BINDADD if the package does not exist - this could be OK
in test, not prod
3) ALTERIN if the package exist - this could be OK in test,
not prod
4) BIND privilege - this could be OK in test, not prod
And the user also needs all privileges required to compile any static SQL
statement. This I can see in test, but never in production.

I was wondering how other shops handle the compiling of C programs
against the DB that resides on the AIX UDB side of the house.

Of course this is only the first half of my problem. The compilation
of the C programs that access the data on the OS/390 side are going to have
the same problems and more. I know that I will not be able to get the C
programmers authority for the secondary auth id that does the binds
currently in Endevor.

Am I missing something in the syntax for the C programs so that a
bind file will be created and authority checking will not happen until the
bind is done using the bind command?

Sorry about being so long worded, I just was hoping to explain my situation.

Thanks in advance,

Dave Stritzinger

Welcome to the IDUG DB2-L list. To unsubscribe, go to the archives and home page at From that page select "Join or Leave the list". The IDUG DB2-L FAQ is at The IDUG List Admins can be reached at [login to unmask email] Find out the latest on IDUG conferences at