The syntax for creating primary keys in the script is incorrect.
The syntax from Schema Compare is like this:
=========================
ALTER TABLE TEST.TABLE_NAME
ADD CONSTRAINT CONSTRAINT_PK
PRIMARY KEY
(ID)
USING INDEX TEST.INDEX_PK;
=========================
When you run this, it leads to the following error:
'ORA-01735: invalid ALTER TABLE option'
If you choose to create scripts for tables only, then all the remaining object types, excluding tables and constraints, and then just create scripts for constraints then everything works.
If you just choose constraints then the script for the primary key, the script is:
=========================
ALTER TABLE TEST.TABLE_NAME
ADD CONSTRAINT CONSTRAINT_PK
PRIMARY KEY
(ID);
=========================
The SQL is different.
WORKAROUND:
Compare indexes and run that sync script, then compare constraints and run that sync script.
Another way to workaround it is just to compare everything at once.
STATUS:
Waiting for fix in a future release of Toad for Oracle