繁体   English   中英

Oracle动态创建用于更新分区表的脚本

[英]Oracle Dynamically create script for Updating Partitioned table

我有一个要使用分区键更新的范围分区的Oracle表。

有没有一种方法可以动态创建更新脚本,该脚本将分区键考虑如下,而无需手动维护该脚本

  update table where date between 'a' and 'b'

  update table where date between 'b' and 'c'.

我认为没有必要在where clause指定范围来更新单个分区。 您可以动态使用partition_extension_clause更新

BEGIN
     FOR r IN (
          SELECT partition_name
          FROM user_tab_partitions
          WHERE table_name = 'YOUR_TABLE'
     ) LOOP

    EXECUTE IMMEDIATE 'UPDATE YOUR_TABLE (' || r.partition_name || ')  SET somecol = somevalue where someother_clause';

      COMMIT; --if it's necessary
     END LOOP;
END;
/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM