I want to move a few tables from the system tablespace to a user tablespace (say 'X'). I have some data on the tables, and I also have some user privileges. I want to retain both while moving these tables to 'X.' Please help me out.
You can move the table with the following command:
ALTER TABLE my_table MOVE TABLESPACE new_tablespace;
The biggest advantage is that any privileges, constraints, synonyms, etc. are retained across the move. You will have to rebuild any indexes for this table with the ALTER INDEX REBUILD command though. But that should be a pretty quick operation.
Dig Deeper on Oracle database design and architecture