(Oracle):处于部分删除状态的列
(Oracle): Columns in partially dropped state
我使用Oracle 10g。几个月以来,关于 table:
我有以下错误
ORA-12986: columns in partially dropped state. Submit ALTER TABLE DROP COLUMNS CONTINUE
ALTER TABLE DROP COLUMNS CONTINUE 语句超时失败。
我没有此数据库的 DBA 权限。
我能做什么?删除并重新创建 table?
这是一个巨大的table,有数百万条记录。
我尝试了什么:
曾几何时,我做了以下命令来设置一些列
未使用状态:
ALTER TABLE hr.admin_emp SET UNUSED (hiredate, mgr);
然后,我给出了以下命令:
ALTER TABLE hr.admin DROP UNUSED columns;
系统挂了,操作时间过长,所以报错
现在 table hr.admin
有两列处于部分删除状态,
既不能前进,也不能后退。
我不明白为什么会这样。
我做了以下步骤,系统在第二阶段挂了:
第一阶段
============
SQL> select * from user_unused_col_tabs;
TABLE_NAME COUNT
----------- ----------
TEMP 1
第二阶段
============
SQL> alter table temp drop unused columns;
Table altered.
第三阶段
=============
SQL> select * from user_unused_col_tabs;
no rows selected
检查点 500 选项
我正在用以下语句重试:
ALTER TABLE MYUSER.MYTABLE DROP COLUMNS CONTINUE CHECKPOINT 500;
CHECKPOINT 500 选项对我有帮助吗?
我们已经连续发出了大约十二次命令:
ALTER TABLE MYUSER.MYTABLE DROP COLUMNS CONTINUE CHECKPOINT 250;
该语句每 48 小时自动终止,这是因为我们不得不多次启动它。
大约 500 小时的精心设计,以明确删除处于部分删除状态的列...!!
已确认 CHECKPOINT 250 生成 "commit",因此在下次启动同一命令时,您将从停止点开始。
我使用Oracle 10g。几个月以来,关于 table:
我有以下错误ORA-12986: columns in partially dropped state. Submit ALTER TABLE DROP COLUMNS CONTINUE
ALTER TABLE DROP COLUMNS CONTINUE 语句超时失败。
我没有此数据库的 DBA 权限。
我能做什么?删除并重新创建 table?
这是一个巨大的table,有数百万条记录。
我尝试了什么:
曾几何时,我做了以下命令来设置一些列 未使用状态:
ALTER TABLE hr.admin_emp SET UNUSED (hiredate, mgr);
然后,我给出了以下命令:
ALTER TABLE hr.admin DROP UNUSED columns;
系统挂了,操作时间过长,所以报错
现在 table
hr.admin
有两列处于部分删除状态, 既不能前进,也不能后退。我不明白为什么会这样。
我做了以下步骤,系统在第二阶段挂了:
第一阶段 ============
SQL> select * from user_unused_col_tabs; TABLE_NAME COUNT ----------- ---------- TEMP 1
第二阶段 ============
SQL> alter table temp drop unused columns; Table altered.
第三阶段 =============
SQL> select * from user_unused_col_tabs; no rows selected
检查点 500 选项
我正在用以下语句重试:
ALTER TABLE MYUSER.MYTABLE DROP COLUMNS CONTINUE CHECKPOINT 500;
CHECKPOINT 500 选项对我有帮助吗?
我们已经连续发出了大约十二次命令:
ALTER TABLE MYUSER.MYTABLE DROP COLUMNS CONTINUE CHECKPOINT 250;
该语句每 48 小时自动终止,这是因为我们不得不多次启动它。
大约 500 小时的精心设计,以明确删除处于部分删除状态的列...!!
已确认 CHECKPOINT 250 生成 "commit",因此在下次启动同一命令时,您将从停止点开始。