zoukankan      html  css  js  c++  java
  • 如何更新分区关键字

    如何更新分区关键字 [原创 2008-8-7 10:51:14]   
    我顶 字号:  
     

    为提高查询速度,经常为表建分区,但如何修改表中某条记录的分区呢?

    如表A中,有个分区关键字为area,当update时,会报错:

    Ora-14402 更新分区关键字列将导致分区的更改。

    解决办法如下:

    1、执行如下命令,使表A允许记录转移到其他分区:

    alter table A enable row movement;

    2、进行修改,就不会报错了。

    select * from A where emid=’001’  for update 
    3、修改完毕后,执行如下命令,使表A不允许记录转移到其他分区

    alter table A  disable row movement;

    执行以上三步就可以了,但是修改之后对我们有何影响呢?影响就是,记录的rowid发生了变化,其实oracle后台自动会将原来的rowid记录delete掉,然后在insert一条新记录,若业务中关联rowid的可就要注意了。通过原理,其实也可以先insert一条新数据,然后delete原来的数据,也可以实现对分区关键字的更改。

  • 相关阅读:
    边学边收 代码
    VS2013无法链接到TFS (转)
    使用Spring MVC创建 REST API
    zookeeper的概念和基础
    使用Spring的HttpInvoker
    使用远程服务
    Spring MVC起步
    使用注解创建切面
    通过切点来选择连接点
    Spring实战之切面编程
  • 原文地址:https://www.cnblogs.com/isoftware/p/3763728.html
Copyright © 2011-2022 走看看