Listed below are the requirements that should determine which SQL statements ought to be captured:
- To the greatest extent possible, SQL text and the associated tables and views referenced should be captured and logged to facilitate performance tuning, access modeling, physical modeling modification considerations, and so on.
When enabled, DBQL captures all SQL statement types and stores them into an existing 20-character field named StatementType in DBQLogTbl.
In addition, usage of databases, tables, columns, indices, macros, views, triggers, stored procedure, and User-Defined Functions (UDFs) are logged in DBQLObjTbl. By querying DBQLObjTbl information, DBAs are able to see which views and macros users access. This enables DBAs to delete unused objects.
- It is assumed that user IDs and their associated account strings will adhere to the conventions defined in Logging Resource Usage Data with Account String Variables.
- Step, explain, and XML plan logging can also be logged when needed for more detailed analysis, like performance tuning or troubleshooting.