Oracle分区表使用实例:create or replace procedure bl_partition is
v_sql varchar(1024);
v_count int;
v_partname varchar2(32);
v_startdate date;
v_enddate date := trunc(sysdate) + 1;
begin
v_sql := "select count(*) from user_tables where table_name=""BL_TEST""";
execute immediate v_sql
into v_count;
if v_count = 0 then
v_sql := "create table bl_test (period date,abcd varchar2(20)) nologging partition by range (period)
(partition pmax values less than (MAXVALUE) tablespace bl_test)";
execute immediate v_sql;
end if;
v_sql := "select max(partition_name) from user_tab_partitions where table_name=""BL_TEST"" and partition_name<>""PMAX""";
execute immediate v_sql
into v_partname;
if v_partname is null then
v_startdate := trunc(sysdate) - 2;
else
v_startdate := to_date(substr(v_partname, 2), "yyyymmdd");
end if;
while v_startdate < v_enddate loop
v_startdate := v_startdate + 1;
v_partname := "p" || to_char(v_startdate, "yyyymmdd");
v_sql := "alter table bl_test split partition pmax at (to_date(""" ||
to_char(v_startdate + 1, "yyyyymmdd") ||
""",""yyyymmdd"")) into (partition " || v_partname ||
",partition pmax)";
execute immediate v_sql;
end loop;
end bl_partition; Oracle完整数据库实例迁移如何解决CentOS 5.5+Oracle 11g EM中按钮显示乱码问题相关资讯 Oracle基础教程
- Oracle块编程返回结果集详解 (11/10/2013 10:45:58)
- Oracle基础教程之设置系统全局区 (08/22/2013 14:24:00)
- Oracle基础教程知识点总结 (06/18/2013 07:43:32)
| - Oracle基础教程之tkprof程序详解 (10/22/2013 11:49:50)
- Oracle基础教程之sqlplus汉字乱码 (07/18/2013 16:30:00)
- Oracle 管理之 Linux 网络基础 (02/16/2013 18:37:35)
|
本文评论 查看全部评论 (0)