Stellen Sie sicher, dass die Benutzer-ID des Brokers (bzw. die Gruppe, zu der er gehört) die erforderliche Berechtigung bekommen hat.
Wenn für die ID der gestarteten Task keine Berechtigung zum Ausführen im Plan DSNACLI erteilt wurde, erhalten Sie die im Szenario beschriebenen Fehler. Wenn die ODBC-Tracefunktion aktiviert ist, sehen Sie außerdem folgende Einträge in der Datei
traceodbc für den Broker:
SQLAllocConnect( hEnv=1, phDbc=&1c6bacec )
SQLAllocConnect( )
---> SQL_ERROR
SQLError( hEnv=1, hDbc=0, hStmt=0, pszSqlState=&19ca445c, pfNativeError=&19ca4458,
pszErrorMsg=&1c3d9e50, cbErrorMsgMax=1024, pcbErrorMsg=&19ca4444 )
SQLError( pszSqlState="58004", pfNativeError=-99999, pszErrorMsg="{DB2 for OS/390}
{ODBC Driver}
SQLSTATE=58004
ERRLOC=2:170:6
RRS "CREATE THREAD" failed using DB2 system:DFL0 and Plan:DSNACLI RC=08 and REASON=00f30034",
pcbErrorMsg=159)
---> SQL_SUCCESS
SQLError( hEnv=1, hDbc=0, hStmt=0, pszSqlState=&19ca445c, pfNativeError=&19ca4458,
pszErrorMsg=&1c3d9e50, cbErrorMsgMax=1024, pcbErrorMsg=&19ca4444 )
SQLError( pszSqlState="42505", pfNativeError=-922, pszErrorMsg="{DB2 for OS/390}
{ODBC Driver}
DSNT408I
SQLCODE = -922, ERROR: AUTHORIZATION FAILURE: PLAN ACCESS ERROR.
REASON 00F30034
DSNT418I
SQLSTATE = 42505 SQLSTATE RETURN CODE DSNT415I
SQLERRP = DSNAET03 SQL PROCEDURE DETECTING ERROR ERRLOC=2:170:8", pcbErrorMsg=371 )
---> SQL_SUCCESS
Wenn die ID der gestarteten Task nicht über die Berechtigung SELECT für die Tabellen SYSIBM.SYSSYNONYMS, SYSIBM.SYSDATABASE und SYSIBM.SYSTABLES verfügt, werden bei aktivierter ODBC-Tracefunktion in der Datei traceodbc Einträge folgender Art verzeichnet:
SQLTables( hStmt=1, szTableQualifier=Null Pointer, cbTableQualifier=0,
szTableOwner="MA15USR", cbTableOwner=-3, szTableName=Null Pointer,
cbTableName=0, szTableType=Null Pointer, cbTableType=0 )
SQLTables( )
---> SQL_ERROR