我想更新分区键。分区如下
PARTITION_NAME LAST_ANALYZED NUM_ROWS BLOCKS SAMPLE_SIZE HIGH_VALUE
PORTAL_SERVICE_1 12/8/2016 4133 174 4133 1
PORTAL_SERVICE_2 6/8/2016 4474 174 4474 2
PORTAL_SERVICE_3 10/8/2016 29602 2014 29602 3
PORTAL_SERVICE_OTHERS 24/5/2016 0 110 DEFAULT
Run Code Online (Sandbox Code Playgroud)
此分区应用于列 Portal_Service_id。我想将门户服务 ID 的值从 2 更新为 1。
当我尝试
update trans set PORTAL_SERVICE_ID = 1 where ID = 2054;
Run Code Online (Sandbox Code Playgroud)
我收到错误:错误报告 - SQL 错误:ORA-14402:更新分区键列会导致分区更改 14402. 00000 -“更新分区键列会导致分区更改”
我不允许使用启用行移动。
任何人都可以建议更新行的任何替代方法。
如果这可以在场景中使用,任何人都可以解释一下:
UPDATE <table_name> PARTITION (<partition_name>)
SET <column_name> = <value>
WHERE <column_name> <condition> <value>;
Run Code Online (Sandbox Code Playgroud)