teradata

Useful DBC (Data Base Computer) System Views in Teradata

2,345 views 0 comments about 2 years ago Raymond Tang

This page summarize some of the commonly used views in Teradata.

Conventions

In all the views in the following sections, X views are also available though they only return rows that contain information on objects that the requesting database user owns, created, granted privilige on, granted access through the current role, or granted access through nested roles.

For example, X view for dbc.ChildrenV is dbc.ChidrenVX.

Retrieve all the child databases recursively

dbc.ChildrenV lists all the descendent containers of a database.

For example, the following query retrieves all the child databases of database ParentDb:

SELECT  * 
FROM    DBC.ChildrenV
WHERE Parent='ParentDb';

image

For example, the following result set will be generated if the database hierarchy looks like the above screenshot:

 image

Query database list

SELECT  * 
FROM    DBC.DatabasesV;

View DBC.DatabasesV returns information about all the databases. For example, database name, creator name, permanent space, spool space and temporary space.

Query tables, views, macros, procedures and user defined types lists

Retrieve these informtion by using the following query:

SELECT  * 
FROM    DBC.TablesV;

View DBC.TablesV includes information of creator, object name, database name, request text (DDL) and etc.

TableKind column indicates the object type. For example:

  • T: Table
  • V: View
  • U: User-defined data type
  • R: Table function
  • M: Macro
  • F: Standard function
  • P: Stored procedure

Query columns lists

SELECT  * 
FROM    DBC.ColumnsV
WHERE DatabaseName='DBC' AND TableName='Databases';

View DBC.ColumnsV can be used to retrieve column information.

Query functions list

View DBC.FunctionsV can be used to retireve contraints and indexes of a table:

SELECT  * 
FROM    DBC.FunctionsV;

Query hash and join indices lists

Use view DBC.IndicesV to query hash and join indices:

SELECT  * 
FROM    DBC.IndicesV
WHERE DatabaseName='DBC' AND TableName='RoleGrants';

Check table size

Use view DBC.TableSizeV to query size information for the tables:

SELECT  * 
FROM    DBC.TableSizeV 
WHERE DatabaseName='DBC' AND TableName='RoleGrants';

This view display permanent space by AMP (Vproc):

image

Check disk space size

View DBC.DiskSpaceV can be used to query disk space usage of databases by AMP(Vproc):

SELECT  * 
FROM    DBC.DiskSpaceV 
WHERE DatabaseName='DBC';

This view returns MAX, Current and Allocated space for the following types:

  • Permanent
  • Temporary
  • Spool

Check user permissions/accesses

Use view DBC.AllRights to check the permission of a user:

SELECT  UserName,
    DatabaseName,
    TableName,
    ColumnName,
    AccessRight,
    GrantAuthority,
    GrantorName,
    AllnessFlag,
    CreatorName,
    CreateTimeStamp, 
        CASE 
            WHEN ACCESSRIGHT = 'D' THEN 'DELETE'
            WHEN ACCESSRIGHT = 'I' THEN 'INSERT'
            WHEN ACCESSRIGHT = 'R' THEN 'SELECT'
            WHEN ACCESSRIGHT = 'SH' THEN 'SHOW TABLE/VIEW'
            WHEN ACCESSRIGHT = 'U' THEN 'UPDATE' 
            ELSE 'OTHER - ' || ACCESSRIGHT
        END ACCESS_LEVEL
FROM    DBC.AllRights
WHERE   UserName='PUBLIC';

Other related views can be used:

  • DBC.UserGrantedRightsV
  • DBC.UserRightsV
  • DBC.AllRoleRightsV
  • DBC.UserRoleRightsV
Add comment

Comments (0)
No comments yet.