copy
kommandoen er en SQL*Plus-kommando (ikke en SQL-udviklerkommando). Hvis du har konfigureret dine tnsname-indgange til SID1 og SID2 (f.eks. prøv en tnsping), bør du være i stand til at udføre din kommando.
En anden antagelse er, at tabel1 har de samme kolonner som message_table (og kolonnerne har kun følgende datatyper:CHAR, DATE, LONG, NUMBER eller VARCHAR2). Med en insert-kommando skal du også være bekymret for primære nøgler (f.eks. at du ikke indsætter duplikerede poster).
Jeg prøvede en variation af din kommando som følger i SQL*Plus (uden fejl):
copy from scott/[email protected] to scott/[email protected] create new_emp using select * from emp;
Efter at jeg har udført ovenstående sætning, afkorter jeg også new_emp-tabellen og udførte denne kommando:
copy from scott/[email protected] to scott/[email protected] insert new_emp using select * from emp;
Med SQL Developer kan du gøre følgende for at udføre en lignende tilgang til kopiering af objekter:
-
På værktøjslinjen skal du vælge Værktøjer>Databasekopi.
-
Identificer kilde- og destinationsforbindelser med de kopiindstillinger, du ønsker.
-
For objekttype skal du vælge tabell(er).
- Angiv den eller de specifikke tabeller (f.eks. tabel1).
Kopieringskommandoen er gammel, og dens funktioner bliver ikke opdateret med udgivelsen af nye datatyper. Der er en række mere aktuelle tilgange til dette som Oracles datapumpe (selv for tabeller).