COPY

The COPY command allows you to use SQL*Plus as a conduit for transferring data between two Oracle databases:

COPY {FROM connection|TO connection}
     {APPEND|CREATE|INSERT|REPLACE} 
     destination_table [(column_list)]
     USING select_statement

where:

COPY

Is the command.

FROM/TO

To use the COPY command, you must be connected to one of the databases involved. It doesn’t matter which, but you must be connected either to the database containing the data or the database to which you want to copy the data. If you are connected to the source database, use the TO option to specify the destination database. If you are connected to the target database, use the FROM option to specify the source of the data.

connection

Is the login information to use when connecting to the other database. This must be in the typical username/password@connect_string format.

APP[END]

Causes SQL*Plus to insert the copied rows into the destination table, creating it first if necessary.

CRE[ATE]

Causes SQL*Plus to copy the data only if the destination table is a new table. If the destination table already exists, the COPY command will abort.

INSERT

Causes SQL*Plus to insert the copied rows into the destination table only if it already exists. If the destination table is a new table, the COPY command will abort.

REP[LACE]

Causes SQL*Plus to drop the destination table if it currently exists. A new table is then created, and the data is copied.

destination_table

Is the name of the table to which you want to copy the data.

column_list ...

Get Oracle SQL*Plus: The Definitive Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.