`
lb290
  • 浏览: 4140 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

oracle存储过程切割日志表

阅读更多
CREATE OR REPLACE PROCEDURE proc_split_table
Authid Current_User
IS
   -- sms
   current_table_name1   VARCHAR2 (50);
   create_table_str1     VARCHAR2 (200);
   padding_table_str1    VARCHAR2 (200);
   del_tabledata_str1    VARCHAR2 (200);

   tmpvar                NUMBER;
BEGIN
   tmpvar := 0;
   current_table_name1 :=  'WHATYUSER_LOG4J_' || TO_CHAR (ADD_MONTHS (SYSDATE, -1), 'YYYYMM');
   create_table_str1 := 'CREATE TABLE ' || current_table_name1 || ' AS SELECT * FROM WHATYUSER_LOG4J WHERE 1=2';
   padding_table_str1 := 'INSERT INTO ' || current_table_name1 || ' SELECT * FROM WHATYUSER_LOG4J WHERE OPERATE_TIME BETWEEN TRUNC ( ADD_MONTHS (SYSDATE, -1), ''MONTH'') AND TRUNC ( ADD_MONTHS (SYSDATE, 0), ''MONTH'')';
   del_tabledata_str1 :=    'DELETE FROM WHATYUSER_LOG4J WHERE OPERATE_TIME BETWEEN TRUNC ( ADD_MONTHS (SYSDATE, -1), ''MONTH'') AND TRUNC ( ADD_MONTHS (SYSDATE, 0), ''MONTH'')';

   DBMS_OUTPUT.put_line ( create_table_str1 );
   DBMS_OUTPUT.put_line ( padding_table_str1 );
   DBMS_OUTPUT.put_line ( del_tabledata_str1 );
   EXECUTE IMMEDIATE create_table_str1;
   EXECUTE IMMEDIATE padding_table_str1;
   EXECUTE IMMEDIATE del_tabledata_str1;
   EXECUTE IMMEDIATE 'CREATE INDEX idx1_'||current_table_name1||' ON '||current_table_name1||' ( USERID )';
   EXECUTE IMMEDIATE 'CREATE INDEX idx2_'||current_table_name1||' ON '||current_table_name1||' ( BEHAVIOR )';
   EXECUTE IMMEDIATE 'CREATE INDEX idx3_'||current_table_name1||' ON '||current_table_name1||' ( STATUS )';
   EXECUTE IMMEDIATE 'CREATE INDEX idx4_'||current_table_name1||' ON '||current_table_name1||' ( LOGTYPE )';

   COMMIT;

EXCEPTION
   WHEN NO_DATA_FOUND
   THEN
      NULL;
   WHEN OTHERS
   THEN
       ROLLBACK;
       DBMS_OUTPUT.put_line ( '['||SQLCODE||']'||SQLERRM);
      RAISE;
END proc_split_table; 
/

 

将表WHATYUSER_LOG4J按照月份分割为WHATYUSER_LOG4J_201010这样的表

 

0
0
分享到:
评论

相关推荐

    数据库切割工具--易飞7.0包

    此外,切割后可能需要对数据库索引、存储过程、触发器等进行相应调整,以适应新的数据结构。 总之,"易飞7.0包"作为一款专业的数据库切割工具,其核心目标是帮助用户更有效地管理和优化数据库,提高系统性能,降低...

    SPRINGMVC +SPRING + ORACLE

    2. **PL/SQL**: Oracle扩展的SQL,支持存储过程、函数、触发器等。 3. **表和字段**: 数据存储的基本单元,表由列(字段)组成。 4. **索引**: 提高查询性能的机制,分为唯一索引、非唯一索引、全文索引等。 5. **...

    BIEE_Oracle开发教程

    - 灵活的数据整合能力:提供数据切割、多聚合表等特性来增强数据建模灵活性。 - 完备的附加功能:除了基本的报表和分析功能外,还包含了数据回写、调度等功能。 #### BIEE总览 - BIEE的工作主要包括三个部分: -...

    oracle面试问题

    此外,由于不需切割归档日志到磁盘上,冷备份可以带来一定的性能提升。 #### 二、如何在没有控制文件的情况下恢复数据库 当面临无控制文件的情况时,可以采取以下步骤来恢复数据库: 1. **创建文本基础的控制文件...

    Oracle 体系结构-SGA

    其他SGA组件还包括Redo Log Buffer(用于存储事务日志信息),Java Pool(服务于Java PL/SQL程序),Large Pool(大对象缓存,用于RMAN备份和其他大内存需求),Stream Pool(流处理相关的内存区域)以及Fixed SGA...

    分布式历史数据的处理.pdf

    3. 使用内存数据库加速读取:对于不能分割且必须存储的历史数据,内存数据库如Oracle的TimesTen可以提升读取速度。TimesTen是一种内存数据库系统,它将数据存储在物理内存中,以实现快速响应和高处理能力。它支持多...

    MySql高级.docx

    - **水平切割**:根据某些字段值的范围将数据表切分为多个子表,每个子表存储一部分数据。 9. **数据迁移** - **工具与方法**:使用 mysqldump、mysqlimport 或第三方工具如 MySQL Workbench 进行数据迁移。 - *...

    MySQL高级.docx

    SQL编程方面,要掌握自定义函数、存储过程、触发器和定时任务的编写。安装配置MySQL服务器同样重要,包括在Linux环境下进行安装,如文中所述,需要先检查系统是否已安装过MySQL,然后卸载旧版本,再从官网下载并安装...

    2020计算机毕业生实习总结范文优质.docx

    日志切割可以有效管理日志文件,避免存储空间耗尽。数据备份策略的制定和执行,是防止数据丢失的关键。通过这些优化措施,可以提升系统的整体性能和可靠性。 (七)、人际交往与团队协作 实习期间,不仅提升了自己的...

    大学生实习报告范文Linux运维实习.pdf

    日志切割,有效管理和存储日志数据;数据备份,保护重要信息不受损失。 5. **数据库管理**:Oracle数据库是大型企业常用的数据库管理系统。实习生需要掌握如何在项目中部署和管理Oracle数据库,以满足应用的需求。 ...

    2022大学生毕业顶岗实习报告.docx

    - **负载均衡与优化**:学习如何配置应用项目的负载均衡,了解并应用日志切割、数据备份等优化措施,提高服务器性能。 - **Oracle数据库管理**:熟悉Oracle数据库的基本操作,能在项目中正确部署Oracle数据库,保障...

    2021年计算机毕业顶岗实习报告3000字word版.docx

    3. **数据库管理**:实习者熟悉了Oracle数据库,能根据项目需求进行部署,这是互联网应用中数据存储和处理的重要环节。 4. **系统优化**:通过日志切割和数据备份,实习者学会了如何优化服务器性能,确保应用项目的...

    Java_PageRecord.rar_favoritez77

    6. **实现细节**:在实际开发中,分页查询的实现可能会考虑优化,例如使用存储过程、预编译的SQL语句(PreparedStatement)以提高性能,或者使用数据库特有的分页方式(如Oracle的ROWNUM,MySQL的LIMIT),以及考虑...

    BIEE的参考资料

    提供灵活的数据整合能力,支持数据切割、多聚合表和多种建模方案;以及一系列完备的附加功能,如数据分析、报表生成、权限管理等。 #### BIEE工作流程详解 BIEE的工作流程主要涵盖三个核心环节:建模、报表制作和...

    拼图游戏Java版源代码

    在这个Java版的拼图游戏中,开发者可能已经实现了图像的切割、打乱、重新组合等核心功能,旨在帮助学习者理解游戏逻辑的编程实现。 首先,让我们了解一下Java的基础知识。Java是一种面向对象的、跨平台的编程语言,...

    拼图-Java课程设计

    Java是一种面向对象的编程语言,由Sun Microsystems(现为Oracle公司)于1995年发布,它的设计目标是“一次编写,到处运行”。Java有丰富的类库,包括Swing、AWT等用于创建GUI的工具包,使得开发者能够轻松构建各种...

Global site tag (gtag.js) - Google Analytics