VALIDATE bind option

The VALIDATE option determines whether to recheck, at run time, errors of the types "OBJECT NOT FOUND" and "NOT AUTHORIZED" that are found during bind or rebind.

VALIDATE
  • ( RUN )
  • ( BIND )
On: BIND and REBIND PLAN and PACKAGE

Start of changeNot valid for REBIND of a native SQL procedure package.End of change

The option has no effect if all objects and needed privileges exist.
( RUN )
Indicates that if not all objects or privileges exist at bind time, the process issues warning messages, but the bind succeeds. DB2® checks existence and authorization again at run time for SQL statements that failed those checks during bind. The checks use the authorization ID of the plan or package owner.

Start of changeIf you specify the VALIDATE(RUN) bind option, and the application to be bound contains an error with a SET host-variable assignment statement, the bind process still issues only warning messages, not error messages.End of change

( BIND )
Indicates that if not all objects or needed privileges exist at bind time, the process issues error messages, and does not bind or rebind the plan or package, except that:
  • For BIND PACKAGE only, if you use the option SQLERROR(CONTINUE), the bind succeeds, but the SQL statements in it that have errors cannot execute.

Start of changeWith VALIDATE(BIND), DB2 does not check authorization for the LOCK TABLE statement and some CREATE, ALTER, and DROP statements until run time.End of change

Defaults:

Process Default value
BIND PLAN RUN
BIND PACKAGE RUN
REBIND PLAN Existing value
REBIND PACKAGE Existing value

Catalog record: Column VALIDATE of tables SYSPACKAGE and SYSPLAN.