copy
kommandot är ett SQL*Plus-kommando (inte ett SQL Developer-kommando). Om du har ställt in dina tnsname-poster för SID1 och SID2 (t.ex. prova en tnsping), bör du kunna utföra ditt kommando.
Ett annat antagande är att tabell1 har samma kolumner som meddelandetabellen (och kolumnerna har endast följande datatyper:CHAR, DATE, LONG, NUMBER eller VARCHAR2). Med ett insert-kommando måste du också vara orolig för primärnycklar (t.ex. att du inte infogar dubbletter av poster).
Jag försökte en variant av ditt kommando enligt följande i SQL*Plus (utan fel):
copy from scott/[email protected] to scott/[email protected] create new_emp using select * from emp;
Efter att jag kört ovanstående uttalande, trunkerade jag också tabellen new_emp och körde det här kommandot:
copy from scott/[email protected] to scott/[email protected] insert new_emp using select * from emp;
Med SQL Developer kan du göra följande för att utföra en liknande metod för att kopiera objekt:
-
I verktygsfältet väljer du Verktyg>Databaskopiering.
-
Identifiera käll- och destinationsanslutningar med de kopieringsalternativ du vill ha.
-
För objekttyp, välj tabell(er).
- Ange specifika tabeller (t.ex. tabell1).
Kopieringskommandometoden är gammal och dess funktioner uppdateras inte med lanseringen av nya datatyper. Det finns ett antal mer aktuella metoder för detta som Oracles datapump (även för tabeller).