Oracle 11g维护分区(三)Dropping Partitions
你可以从范围、间隔、列表或者复合[范围|列表]分区表中删除分区。对于间隔分区表而言,你只能删除范围分区或者那些已经物化的
删除分区
你可以从范围、间隔、列表或者复合[范围|列表]分区表中删除分区。对于间隔分区表而言,你只能删除范围分区或者那些已经物化的间隔分区。对于哈希分区表或者复合哈希分区表的哈希子分区而言,你必须使用融合操作来代替。
你不能从引用分区表中删除一个分区。相反,对父表的删除操作会级连到所有子表。
删除表分区
使用一下语句来删除一个表分区或者子分区:
为了保存分区里的数据,可以使用合并分区语句来代替删除分区语句。
如果该表定义有本地索引,那么上述语句将会从本地索引中删除对应的分区或子分区。所有的全局索引,或者全局分区索引的所有分区都将被标识为UNUSABLE,除非符合下面两个条件之一:
注意:
如果一个表只包含一个分区,你不能删除该分区。相反,你必须删除这个表。
在间隔分区表或者间隔复合分区表的范围分区部分,你不能删除最高的范围分区。
下面的部分包含了删除表分区的一些场景。
从一个包含数据和全局索引的表中删除一个分区
如果分区包含数据并且表上定义有一个或多个全局索引,那么可以使用下面任一方法来删除表分区。
方法一
在ALTER TABLE ... DROP PARTITION语句执行期间,保持全局索引不变。然后,你必须重建全部全局索引(无论是否分区),因为这个索引(或者索引分区)已经被标识为UNUSABLE。下面的语句提供了一个示例,首先从sales表删除分区dec98,,然后重建该表的全局索引。
ALTER TABLE sales DROP PARTITION dec98;
ALTER INDEX sales_area_ix REBUILD;
如果索引sales_area_ix是一个范围分区全局索引,那么索引的全部分区都需要重建。并且,我们不可能在一条语句中重建索引的所有分区。你必须针对索引的每一个分区分别执行REBUILD语句。下面的语句分别重建了索引分区jan99_ix, feb99_ix, mar99_ix, ..., dec99_ix。
ALTER INDEX sales_area_ix REBUILD PARTITION jan99_ix;
ALTER INDEX sales_area_ix REBUILD PARTITION feb99_ix;
ALTER INDEX sales_area_ix REBUILD PARTITION mar99_ix;
...
ALTER INDEX sales_area_ix REBUILD PARTITION dec99_ix;
该方法最适用于被删除分区包含总数据很大比例的大表。
方法二
在执行ALTER TABLE ... DROP PARTITION之前,执行DELETE语句来删除分区的所有数据行。DELETE语句更新全局索引。
例如,要删除第一个分区,执行以下语句:
DELETE FROM sales partition (dec98);
ALTER TABLE sales DROP PARTITION dec98;
该方法最适用于小表,或者被删除分区数据占总数据很小比例的大表。
方法三
在执行ALTER TABLE... DROP PARTITION语句时指定UPDATE INDEXES语句。这样做的话,在删除分区的同时也会更新全局索引。
ALTER TABLE sales DROP PARTITION dec98
UPDATE INDEXES;
从一个包含数据和引用完整性约束的表中删除一个分区
如果该表包含引用完整性约束,并且一个分区包含数据,选择下面一种方法来删除该分区。该表只有一个本地索引,因此不需要重建任何索引。
方法一
如果表中不含引用被删除分区中数据的数据,那么你可以禁用引用表的完整性约束,执行ALTER TABLE ... DROP PARTITION语句,然后在重新启用完整性约束。
该方法最适用于被删除分区包含总数据很大比例的大表。如果表中含有引用被删除分区中数据的数据,那么必须确保删除这些数据,这样你就可以重新启用引用完整性约束。
方法二
如果引用表中有数据,那么在你执行ALTER TABLE ... DROP PARTITION语句之前,你可以执行DELETE语句来删除分区的所有数据。DELETE语句会强制引用完整性约束,也会激发触发器并生成redo和undo日志。如果你创建约束时包含ON DELETE CASCADE选项,那么删除操作也会成功删除引用表的所有行。
DELETE FROM sales partition (dec94);
ALTER TABLE sales DROP PARTITION dec94;
该方法最适用于小表,或者被删除分区数据占总数据很小比例的大表。
删除间隔分区
你可以删除一个间隔分区表中的间隔分区。该操作只会删除分区的数据,分区的定义会被保留。如果有数据插入到刚刚被删除的分区,那么数据库将会再次创建一个间隔分区。
你也可以删除一个间隔分区表中的范围分区。在一个间隔分区表中删除一个范围分区,要遵守在一个范围分区表中删除一个范围分区的规则。如果你要删除范围分区靠中间的分区,那么下一分区的下边界将会移动到你刚刚删除的那个分区的下边界。你不能删除一个间隔分区表中范围分区部分的最高范围分区。
下面的例子删除了sales表的2007年九月的间隔分区。由于该标只有本地索引,没有索引失效。
ALTER TABLE sales DROP PARTITION FOR(TO_DATE('01-SEP-2007','dd-MON-yyyy'));
删除索引分区
你不能显式地删除一个本地索引的一个分区。相反,只有你删除基表的一个分区时相应的本地索引分区会被删除。
如果一个全局分区索引为空,那么你可以通过执行ALTER INDEX ... DROP PARTITION语句显式地删除索引分区。但是,如果一个全局索引分区不为空,那么删除这个分区将会导致下一个最高分区被标识为UNUSABLE。例如,你要删除索引分区P1,P2时下一个最高分区。你必须执行以下语句:
ALTER INDEX npr DROP PARTITION P1;
ALTER INDEX npr REBUILD PARTITION P2;
注意:
在一个全局索引中,你不能删除最高分区。
本文永久更新链接地址:

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

主板上SPDIFOUT连接线序最近我遇到了一个问题,就是关于电线的接线顺序。我上网查了一下,有些资料说1、2、4对应的是out、+5V、接地;而另一些资料则说1、2、4对应的是out、接地、+5V。最好的办法是查看你的主板说明书,如果找不到说明书,你可以使用万用表进行测量。首先找到接地,然后就可以确定其他的接线顺序了。主板vdg怎么接线连接主板的VDG接线时,您需要将VGA连接线的一端插入显示器的VGA接口,另一端插入电脑的显卡VGA接口。请注意,不要将其插入主板的VGA接口。完成连接后,您可以

本篇文章将详细介绍如何安装和注册比特币交易应用。比特币交易应用允许用户管理和交易比特币等加密货币。文章逐步指导用户完成安装和注册过程,包括下载应用程序、创建账户、进行身份验证和首次存款。文章的目标是为初学者提供清晰易懂的指南,帮助他们轻松进入比特币交易的世界。

欧易,又称OKX,是一个全球领先的加密货币交易平台。文章提供了欧易官方安装包的下载入口,方便用户在不同设备上安装欧易客户端。该安装包支持 Windows、Mac、Android 和 iOS 系统,用户可根据自己的设备类型选择相应版本下载。安装完成后,用户即可注册或登录欧易账户,开始交易加密货币和享受平台提供的其他服务。

本文推荐全球十大数字货币交易APP,涵盖币安(Binance)、OKX、火币(Huobi Global)、Coinbase、Kraken、Gate.io、KuCoin、Bitfinex、Gemini和Bitstamp。这些平台在交易对数量、交易速度、安全性、合规性、用户体验等方面各有特色,例如币安以其高交易速度和广泛服务闻名,而Coinbase则更适合新手用户。选择适合自己的平台需要综合考虑自身需求和风险承受能力。 了解全球主流数字货币交易平台,助您安全高效进行数字资产交易。

没有单一“最好用”的数字货币交易App,选择取决于个人需求。1. OKX功能强大,币种丰富;2. Binance流动性高,交易类型多样;3. Gate.io提供质押挖矿等独特功能;4. Huobi Global界面友好,多语言支持;5. Kraken注重安全性;6. Coinbase适合新手,注重用户教育。 选择时需考虑安全性、流动性、手续费、功能、用户体验等等因素。

本文介绍了 10 个主流的加密货币交易所,涵盖了它们的成立时间、服务范围、安全性、流动性、交易费用等基本信息。这些交易所包括:OKX、Binance、Gate.io、Bitget、Coinbase、Huobi、KuCoin、Crypto.com、Gemini 和 Kraken。

虚拟货币市场蓬勃发展,众多交易平台应运而生。本文将介绍虚拟货币领域的三大龙头应用程序,它们以出色的用户体验、强大的安全性和丰富的功能而著称。这些应用程序包括币安(Binance)、芝麻开门(gate.io)和 欧易(okx),它们为投资者提供了便捷、安全的途径,可以购买、出售、交易和跟踪虚拟货币。

本文根据全球信息,整理了全球领先的虚拟数字货币交易平台排名,包括Binance(币安)、OKX、Gate.io、Huobi(火币)、Coinbase、Kraken、Crypto.com、bitget、KuCoin和Bitstamp等。这些平台在用户数量、交易量、交易品种、安全性、合规性等方面各有特色,例如币安以其庞大的用户群和广泛的交易选择着称,Coinbase则以其在美国市场的领先地位和易用性而闻名。 选择合适的交易平台需要根据自身需求,权衡安全性、费用、交易品种等因素。
