I created a tablespace in an Oracle 12 Enterprise Edition database.
I should have used ASM but I put its datafile in ordinary disk space by mistake:
SQL> col banner format a47
SQL> l
1 select banner from v$version
2* where banner like 'Oracle Database%'
SQL> /
BANNER
-----------------------------------------------
Oracle Database 12c Enterprise Edition Release
12.2.0.1.0 - 64bit Production
SQL> select file_name from dba_data_files
2 where tablespace_name = 'ANDREW'
3 /
FILE_NAME
--------------------------------------------------
/home/oracle/andrew/datafile1.dbf
SQL>
I moved the datafile to ASM as follows:
SQL> alter database move datafile
2 '/home/oracle/andrew/datafile1.dbf'
3 to '+DATA'
4 /
Database altered.
SQL> select file_name from dba_data_files
2 where tablespace_name = 'ANDREW'
3 /
FILE_NAME
--------------------------------------------------
+DATA/NLPEST1_LHR1S2/7976D62027536974E0530600000A7
C7B/DATAFILE/andrew.301.1036667943
SQL>
I tried the same thing in an Oracle 12 Standard Edition database on a different server but Oracle returned an ORA-00439:
SQL> col banner format a45
SQL> l
1 select banner from v$version
2* where banner like 'Oracle Database%'
SQL> /
BANNER
---------------------------------------------
Oracle Database 12c Standard Edition Release
12.2.0.1.0 - 64bit Production
SQL> select file_name from dba_data_files
2 where tablespace_name = 'ANDREWS_TABLESPACE'
3 /
FILE_NAME
----------------------------------------------
/home/oracle/andrew/andrews_tablespace.dbf
SQL> alter database move datafile
2 '/home/oracle/andrew/andrews_tablespace.dbf'
3 to '+DATA'
4 /
alter database move datafile
*
ERROR at line 1:
ORA-00439: feature not enabled: online move datafile
SQL>