The Copy Statement and Enforcing Integrities
If you use the COPY statement where integrities are involved, after the copy operation you must check for and replace or delete rows with values violating the integrities. Alternatively, you can copy to a temporary table and create an INSERT statement that uses a subselect statement on the temporary table.
Note: Constraints defined when you create or alter a table are also ignored in this situation and must be dealt with in a similar manner.