zoukankan      html  css  js  c++  java
  • Building SQL Test Cases

    For many SQL-related problems, obtaining a reproducible test case makes it easier to resolve the problem. Starting with the 11g Release 2 (11.2), Oracle Database contains the SQL Test Case Builder, which automates the somewhat difficult and time-consuming process of gathering and reproducing as much information as possible about a problem and the environment in which it occurred.

    SQL Test Case Builder captures information pertaining to a SQL-related problem, along with the exact environment under which the problem occurred, so that you can reproduce and test the problem on a separate database. After the test case is ready, you can upload the problem to Oracle Support to enable support personnel to reproduce and troubleshoot the problem.

    The information gathered by SQL Test Case Builder includes the query being executed, table and index definitions (but not the actual data), PL/SQL functions, procedures, and packages, optimizer statistics, and initialization parameter settings.

    16.6.1 Creating a Test Case

    You can access the SQL Test Case Builder from Enterprise Manager or manually using the DBMS_SQLDIAG package.

    16.6.1.1 Accessing SQL Test Case Builder from Enterprise Manager

    From Enterprise Manager, the SQL Test Case Builder is accessible only when a SQL incident occurs. A SQL-related problem is referred to as a SQL incident, and each SQL incident is identified by an incident number. You can access the SQL Test Case Builder from the Support Workbench page in Enterprise Manager.

    You can access the Support Workbench page in either of the following ways:

    • In the Database Home page of Enterprise Manager, under Diagnostic Summary, click the link to Active Incidents (indicating the number of active incidents). This opens the Support Workbench page, with the incidents listed in a table.

    • Click Advisor Central under Related Links to open the Advisor Central page. Next, click SQL Advisors and then Click here to go to Support Workbench to open the Support Workbench page.

    From the Support Workbench page, to access the SQL Test Case Builder:

    1. Click an incident ID to open the problem details for the particular incident.

    2. Next, click Oracle Support in the Investigate and Resolve section.

    3. Click Generate Additional Dumps and Test Cases.

    4. For a particular incident, click the icon in the Go To Task column to run the SQL Test Case Builder.

      The output of the SQL Test Case Builder is a SQL script that contains the commands required to re-create all the necessary objects and the environment. SQL Test Case Builder stores the file in the following location, where inc_num refers to the incident number and run_num refers to the run number:

      $ADR_HOME/incident/incdir_inc_num/SQLTCB_run num
      

      For example, a valid output file name could be as follows:

      $ORACLE_HOME/log/diag/rdbms/dbsa/dbsa/incident/incdir_2657/SQLTCB_1
      

    16.6.1.2 Accessing SQL Test Case Builder Using DBMS_SQLDIAG

    You can also invoke the SQL Test Case Builder manually, using the DBMS_SQLDIAG package. This package consists of various subprograms for the SQL Test Case Builder, some of which are listed in Table 16-1.

    Table 16-1 SQL Test Case Builder Procedures in DBMS_SQLDIAG

    Procedure NameFunction

    EXPORT_SQL_TESTCASE

    Generates a SQL test case

    EXPORT_SQL_TESTCASE_DIR_BY_INC

    Generates a SQL test case corresponding to the incident ID passed as an argument

    EXPORT_SQL_TESTCASE_DIR_BY_TXT

    Generates a SQL test case corresponding to the SQL text passed as an argument

    For more information on this package and all of its procedures and parameters, see Oracle Database PL/SQL Packages and Types Reference.

    http://docs.oracle.com/cd/E11882_01/server.112/e41573/sql_overview.htm#PFGRF94838

  • 相关阅读:
    C++ 虚基类表指针字节对齐
    C++ 虚函数的内存分配
    虚函数&&虚继承
    内存管理简便复习总结
    stack,heap的区别
    内存泄漏(memory leak)和内存溢出
    php+mysqli预处理技术实现添加、修改及删除多条数据的方法
    JavaScript 常用方法总结
    6个超实用的PHP代码片段
    php 备份数据库代码(生成word,excel,json,xml,sql)
  • 原文地址:https://www.cnblogs.com/gispf/p/3766011.html
Copyright © 2011-2022 走看看