日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

给Oracle 11g Interval分区进行重命名

發(fā)布時(shí)間:2024/8/26 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 给Oracle 11g Interval分区进行重命名 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Oracle ?11g 眾多新特性中,我最喜歡的就是分區(qū)表增強(qiáng),眾所周知很多大問題“化整為零”之后就不是個(gè)問題,分區(qū)表就是一種非常好用的“化整為零”的手段。

還是說回正題吧,使用Interval分區(qū)不難,為分區(qū)/子分區(qū)的重命名也不難,我的分區(qū)表大致定義如下:

1 CREATE?TABLE?Partition_Table
2 (
3 ??....
4 ??....
5 ??....
6 )
7 PARTITION?BY?RANGE( MSGDATE ) INTERVAL( NUMTOYMINTERVAL(1,'MONTH') )
8 SUBPARTITION?BY?LIST( DAY_V )

????? 分區(qū)和子分區(qū)的重命名語(yǔ)法如下:

1 alter?table?<table_name> rename partition <partition_name>?to?<new_partition_name>;
2 alter?table?<table_name> rename subpartition <subpartition_name>?to?<new_subpartition_name>;

????? 每當(dāng)新數(shù)據(jù)觸發(fā)新建分區(qū)后,分區(qū)名字是系統(tǒng)給的,雖然不影響分區(qū)表的使用,但是看著很讓人迷茫:

1 select?
2 ??table_name ,
3 ??partition_name,
4 ??subpartition_name ,
5 ??tablespace_name
6 from?user_tab_subpartitions?
7 where?subpartition_name?like?'SYS%'?;
01 TABLE_NAME???????????????????? PARTITION_NAME? SUBPARTITION_NAME? TABLESPACE_NAME
02 ------------------------------ --------------- ------------------ ------------------------------
03 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP100??????? FIREWALL16
04 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP101??????? FIREWALL17
05 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP102??????? FIREWALL18
06 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP103??????? FIREWALL19
07 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP104??????? FIREWALL20
08 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP105??????? FIREWALL21
09 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP106??????? FIREWALL22
10 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP107??????? FIREWALL23
11 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP108??????? FIREWALL24
12 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP109??????? FIREWALL25
13 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP110??????? FIREWALL26
14 ??
15 TABLE_NAME???????????????????? PARTITION_NAME? SUBPARTITION_NAME? TABLESPACE_NAME
16 ------------------------------ --------------- ------------------ ------------------------------
17 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP111??????? FIREWALL27
18 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP112??????? FIREWALL28
19 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP113??????? FIREWALL29
20 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP114??????? FIREWALL30
21 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP115??????? FIREWALL31
22 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP85???????? FIREWALL01
23 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP86???????? FIREWALL02
24 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP87???????? FIREWALL03
25 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP88???????? FIREWALL04
26 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP89???????? FIREWALL05
27 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP90???????? FIREWALL06
28 ??
29 TABLE_NAME???????????????????? PARTITION_NAME? SUBPARTITION_NAME? TABLESPACE_NAME
30 ------------------------------ --------------- ------------------ ------------------------------
31 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP91???????? FIREWALL07
32 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP92???????? FIREWALL08
33 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP93???????? FIREWALL09
34 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP94???????? FIREWALL10
35 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP95???????? FIREWALL11
36 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP96???????? FIREWALL12
37 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP97???????? FIREWALL13
38 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP98???????? FIREWALL14
39 P_MYSYSLOG_IL_2010???????????? SYS_P116??????? SYS_SUBP99???????? FIREWALL15

????? 將分區(qū)/子分區(qū)的名字改成得有意義才是王道。以下是用一個(gè)過程配合游標(biāo)來改分區(qū)名,重點(diǎn)是是從high_value字段獲得該分區(qū)的范圍描述,其他沒什么了:

01 declare?
02 ?v_sql?varchar(400);
03 ?v_table_name user_tab_partitions.table_name%type;
04 ?v_partition_name user_tab_partitions.partition_name%type;
05 ?v_high_value?varchar(200);
06 ?v_tmp_partition_name user_tab_partitions.partition_name%type;
07 ?cursor?cur?is?
08 ???select?
09 ??????table_name ,
10 ??????partition_name ,
11 ??????high_value?
12 ????from?user_tab_partitions?
13 ????where?partition_name?like?'SYS%'?;
14 begin
15 ??open?cur;
16 ??loop
17 ????fetch?cur?into?v_table_name,v_partition_name,v_high_value;
18 ????exit?when?cur%notfound;
19 ????v_tmp_partition_name := substr(v_high_value,11,10);
20 ????v_tmp_partition_name := to_char( to_date(v_tmp_partition_name,'yyyy-mm-dd')-1 ,?'yyyymm');
21 ????v_sql :=?'alter table '||v_table_name||' rename partition '
22 ??????||v_partition_name
23 ??????||' to P'||v_tmp_partition_name;
24 ????dbms_output.put_line( v_sql );
25 ????execute?immediate v_sql;
26 ??end?loop;
27 ??close?cur;
28 end;
29 /

????? 由于改分區(qū)名屬于DDL語(yǔ)句,對(duì)于忙碌的系統(tǒng)來說很容易遇到ORA-00054這個(gè)錯(cuò)誤:

1 ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired

????? Oracle 11g 同時(shí)也引入了一個(gè)新特性——DDL Wait ,以前遇到這種情況要不就是找出那個(gè)該死的Transaction kill掉,要不就雇個(gè)人拼命堅(jiān)持不懈地敲鍵盤跑這條DDL,直到成功執(zhí)行,現(xiàn)在好了,這個(gè)人可以下崗了。只要設(shè)定ddl_lock_timeout這個(gè)參數(shù)就可以了,這個(gè)參數(shù)可以在實(shí)例級(jí)別和會(huì)話級(jí)別上設(shè)置,如果該值為0,遇到未提交事務(wù)時(shí)就會(huì)馬上報(bào)ORA-00054,如果設(shè)定為10,DDL語(yǔ)句會(huì)為這個(gè)事務(wù)最多等10秒,10秒內(nèi)事務(wù)提交,DDL語(yǔ)句就會(huì)執(zhí)行成功,否則10秒后再報(bào)ORA-00054。

總結(jié)

以上是生活随笔為你收集整理的给Oracle 11g Interval分区进行重命名的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 婷婷丁香久久 | 伊人久久免费视频 | 女婴高潮h啪啪 | 蜜臀av性久久久久蜜臀av麻豆 | 亚洲欧洲色 | 国产精品久久久久久久久动漫 | 巨大胸大乳奶电影 | 精品在线视频观看 | 日本a一级 | 91精品99 | 一级特黄特色的免费大片视频 | 糖心av | 色欧美在线 | 欧美巨乳在线观看 | 亚洲免费在线视频 | 少妇免费视频 | 好吊日精品视频 | 色爱区综合| 五月天综合婷婷 | 偷偷久久 | 97国产精品人人爽人人做 | 女性向av免费网站 | 国产一级二级毛片 | 97久久久久久久久久 | 天天超碰 | 国产精品白丝喷水在线观看 | 美女黄污网站 | 欧美,日韩,国产在线 | 欧美激情精品久久久久久变态 | 亚洲午夜精品视频 | 日本综合色 | 成人午夜网站 | 日本色视频 | 鲁片一区二区三区 | 蜜桃成熟时李丽珍国语 | 免费黄色网址在线观看 | av爱爱爱 | a级大片在线观看 | 久久国产精品综合 | 韩日产理伦片在线观看 | 538国产视频 | 深田咏美中文字幕 | 亚洲操操 | 国产欧美视频在线播放 | 日本国产一区二区 | 极品销魂美女一区二区三区 | 欧美熟妇交换久久久久久分类 | 黑人玩弄人妻一区二区三区影院 | 丰满的女人性猛交 | 色av综合 | av最新版天堂资源在线 | 久久99精品波多结衣一区 | 一区二区三区影院 | 91高清视频在线 | 在线观看涩涩视频 | 成人乱码一区二区三区av | 手机看片日韩欧美 | 在线看片中文字幕 | 影音先锋中文字幕资源 | 捆绑无遮挡打光屁股调教女仆 | 91精品国产闺蜜国产在线闺蜜 | 国产乱淫av片免费看 | 国产在线观看无码免费视频 | 天天操夜夜草 | 欧洲色av | 黄色a毛片 | 综合图区亚洲 | 免费成人看片 | 免费中文字幕日韩欧美 | 亚洲色婷婷一区二区三区 | 五月天激情开心网 | 欧美日韩在线观看一区 | av噜噜在线观看 | 啪啪日韩 | 婷婷综合社区 | 久久99精品国产91久久来源 | 国产精品一区二区av日韩在线 | 亚洲黄色av网站 | 妺妺窝人体色www在线下载 | 91夫妻视频 | 国产毛片精品国产一区二区三区 | 啊v视频在线观看 | 麻豆传媒映画官网 | 日韩精品一区二区三区在线视频 | 日本免费一区二区三区最新 | 日韩欧美高清在线观看 | 国产一级生活片 | 久久精品99久久 | 久久精品6 | 色婷婷国产精品综合在线观看 | av免费视屏 | 久久狠狠婷婷 | 亚洲女优在线 | 欧美一区二区黄色 | 国产视频在 | 亚洲欧美日韩精品一区 | 99精品久久 | 69色堂| 无码少妇一级AV片在线观看 |