网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的范文:

 

标题 Oracle 测试常用表BIG_TABLE
范文
    创建测试用表,DBA经常用到,通常都是基于dba_objects来创建的比较多。本文根据Tom大师的big_table进行了整理,供大家参考。
    一、基于Oracle 10g下的big_table
    --==============================================
    -- Create a test table for Oracle 10g
    -- File : cr_big_tb_10g.sql
    -- Author : Robinson
    -- Blog :
    --==============================================
    prompt
    prompt Create a big table from all_objects
    prompt ======================================
    CREATE TABLE big_table
    AS
    SELECT ROWNUM id, a.*
    FROM all_objects a
    WHERE 1=0;
    prompt
    prompt Modify table to nologgming mode
    prompt ==========================
    ALTER TABLE big_table NOLOGGING;
    prompt
    prompt Please input rows number to fill into big_table
    prompt ============================================
    DECLARE
    l_cnt NUMBER;
    l_rows NUMBER := &1;
    BEGIN
    INSERT /*+ append */
    INTO big_table
    SELECT rownum, a.*
    FROM all_objects a;
    l_cnt := SQL%ROWCOUNT;
    COMMIT;
    WHILE (l_cnt < l_rows)
    LOOP
    INSERT /*+ APPEND */
    INTO big_table
    SELECT rownum + l_cnt
    ,owner
    ,object_name
    ,subobject_name
    ,object_id
    ,data_object_id
    ,object_type
    ,created
    ,last_ddl_time
    ,TIMESTAMP
    ,status
    ,temporary
    ,generated
    ,secondary
    FROM big_table
    WHERE rownum <= l_rows - l_cnt;
    l_cnt := l_cnt + SQL%ROWCOUNT;
    COMMIT;
    END LOOP;
    END;
    /
    prompt
    prompt Add primary key for big table
    prompt =====================================
    ALTER TABLE big_table ADD CONSTRAINT
    big_table_pk PRIMARY KEY (id);
    prompt
    prompt Gather statistics for big_table
    prompt =====================================
    BEGIN
    dbms_stats.gather_table_stats(ownname => USER,
    tabname => 'BIG_TABLE',
    method_opt => 'for all indexed columns',
    cascade => TRUE);
    END;
    /
    prompt
    prompt check total rows for big_table
    prompt ====================================
    SELECT COUNT(*)
    FROM big_table;
    二、基于Oracle 11g下的big_table
    --==============================================
    -- Create a test table for Oracle 11g
    -- File : cr_big_tb_11g.sql
    -- Author : Robinson
    -- Blog :
    --==============================================
    prompt
    prompt Create a big table from all_objects
    prompt ======================================
    CREATE TABLE big_table
    AS
    SELECT ROWNUM id, a.*
    FROM all_objects a
    WHERE 1=0;
    prompt
    prompt Modify table to nologgming mode
    prompt ==========================
    ALTER TABLE big_table NOLOGGING;
    prompt
    prompt Please input rows number to fill into big_table
    prompt ============================================
    DECLARE
    l_cnt NUMBER;
    l_rows NUMBER := &1;
    BEGIN
    INSERT /*+ append */
    INTO big_table
    SELECT rownum, a.*
    FROM all_objects a;
    l_cnt := SQL%ROWCOUNT;
    COMMIT;
    WHILE (l_cnt < l_rows)
    LOOP
    INSERT /*+ APPEND */
    INTO big_table
    SELECT rownum + l_cnt
    ,owner
    ,object_name
    ,subobject_name
    ,object_id
    ,data_object_id
    ,object_type
    ,created
    ,last_ddl_time
    ,TIMESTAMP
    ,status
    ,temporary
    ,generated
    ,secondary
    ,namespace
    ,edition_name
    FROM big_table
    WHERE rownum <= l_rows - l_cnt;
    l_cnt := l_cnt + SQL%ROWCOUNT;
    COMMIT;
    END LOOP;
    END;
    /
    prompt
    prompt Add primary key for big table
    prompt =====================================
    ALTER TABLE big_table ADD CONSTRAINT
    big_table_pk PRIMARY KEY (id);
    prompt
    prompt Gather statistics for big_table
    prompt =====================================
    BEGIN
    dbms_stats.gather_table_stats(ownname => USER,
    tabname => 'BIG_TABLE',
    method_opt => 'for all indexed columns',
    cascade => TRUE);
    END;
    /
    prompt
    prompt check total rows for big_table
    prompt ====================================
    SELECT COUNT(*)
    FROM big_table;
随便看

 

在线学习网范文大全提供好词好句、学习总结、工作总结、演讲稿等写作素材及范文模板,是学习及工作的有利工具。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/21 15:24:49