In Oracle, DDL on remote database is not permitted. One likely reason is that a distributed transaction commit can not be initiated at the remote site (you can't COMMIT@remote
) and since DDL statements include a commit they are not permitted.
You would get an ORA-02021
with other DDL statements:
DDL operations are not allowed on a remote database
You can create the database link by connecting directly to the remote database.
As suggested in the askTom discussion, you can also use DBMS_JOB@remote
or DBMS_SCHEDULER@remote
to create a distinct remote transaction that can initiate the DDL statement.