ORA-12988: cannot drop column from table owned by SYS

It is not possible to set column of a table as unused. SET UNUSED clause lets us make a column of a table invisible and the column can be dropped at a later point of time. This is a measure towards resource consumption. I tried dropping a table in SYS schema and got this error.
SQL> create table dept(manager_id int primary key, dep_name varchar2(10));
Table created.
SQL> alter table dept set unused (manager_id);
alter table dept set unused (manager_id)
*
ERROR at line 1:
ORA-12988: cannot drop column from table owned by SYS
SQL> alter table dept set unused (dept);
alter table dept set unused (dept)
*
ERROR at line 1:
ORA-12988: cannot drop column from table owned by SYS
How to fix ora-12988 error?
We first create a new object with the same name in schema other than SYS with “AS SELECT * FROM..’. We then log onto that schema. We issue the alter table command and we see it to be a success without any error
SQL> create table prac.sys_object as select * from sys_object;
Table created.
SQL> connect prac/prac
Connected.
SQL> alter table sys_object drop column created;
Table altered.
This fixed the errorĀ ORA-12988: cannot drop column from table owned by SYS

Free Oracle Database Articles, Tips, Jobs :

Delivered by FeedBurner