The enhanced object list allows users to list DB2 tables that belong to group IDs, tables that are owned by the user, and tables available for public viewing. In this case, table privileges are granted to group, rather than user, IDs. Any user who can access these group IDs or secondary authorization IDs have the privileges.
You must install and activate a User Defined Function (UDF) supplied by QMF to use the enhanced object list. The UDF must be installed into a DB2 UDB for OS/390 V6 or later database. To install and activate the enhanced object list, do the following steps:
SELECT U.AUTHNAME FROM TABLE( Q.APPL_AUTHNAMES( 'PUBLIC "PUBLIC*"' )) U
The result should be a list of valid authorization names for the user who is executing the SQL statement above. Here is an example of how it might look:
AUTHNAME -------- W397754 #DQZA #J49A DB2FUNC QMFDEV PUBLIC PUBLIC*
SELECT T.CREATOR, T.NAME,... FROM SYSIBM.SYSTABLES T ,( SELECT DISTINCT TA.TCREATOR. TA.TTNAME FROM SYSIBM.SYSTABAUTH TA WHERE TA.GRANTEETYPE=' ' AND TA.GRANTEE IN ( SELECT U.AUTHNAME FROM TABLE( Q.APPL_AUTHNAMES( 'PUBLIC "PUBLIC*"' )) U ) AS UAT ("CREATOR", "NAME") WHERE T.CREATOR=UAT.CREATOR AND T.NAME=UAT.NAME AND T.TYPE IN ('T', 'V')
Follow the job sequence in the table below to install an Enhanced List view into a QMF V8.1 Compatibility or New Function mode for DB2 UDB for z/OS server V8.1
Job name | Purpose |
---|---|
DSQ1BSQL | Binds the install programs to the current server |
DSQ1BUDF | Creates the Enhanced QMF List View Function |
DSQ1BUDV | Creates Enhanced QMF List Views |
If the Enhanced List View does not function like you want it to, run job DSQ1BVW to restore the QMF default List Views.
QMF users periodically need to list objects they have saved in the database or to view comments that show them what purpose a table serves or what type of data a column in the table contains. The QMF LIST and DESCRIBE commands perform these functions.
When a user issues a LIST or DESCRIBE command for a table, QMF uses a view defined on a set of DB2 catalog tables to obtain information about the table. The name of this view is stored in the global variables DSQEC__TABS__LDB2, DSQEC__TABS__RDB2, or DSQEC_TABS_SQL. When users issue these commands for a column within a table, QMF uses the global variables DSQEC__COLS__LDB2, DSQEC__COLS__RDB2, or DSQEC_COLS_SQL to obtain the name of the view.
QMF provides a set of default views, loaded during installation, that return only the tables and column information the user is authorized to see. Because processing for authorization takes extra time and resources, QMF also allows you to customize the table lists and column information by creating your own views.