SQL

2009-05-15 13 views
7

kullanarak Oracle şemaları arasında veri kopyalama Bir Oracle şemasından (CORE_DATA) başka bir INSERT INTO (...) SQL deyimini kullanarak başka bir (MY_DATA) veri kopyalamaya çalışıyorum.SQL

SQL ifadesi neye benziyordu? Her iki erişimi olan bir kullanıcı olarak oturum şema adları ile

cevap

17

Önek tablo isimleri:

insert into MY_DATA.table_name select * from CORE_DATA.table_name; 

tablolar her iki şemalar aynı tanımlandığı varsayılırsa, yukarıdaki tablodan tüm kayıtları kopyalar CORE_DATA adlı tablo_ame adlı tabloyu, tablo_adı olan tablo_adı olarak adlandırın.

+0

için herhangi bir tablo ayrıcalık yaratmak olmalıdır. Kullanıcınızın MY_DATE.table_name – Owen

+0

numaralı telefondan uygun hibe aldığını varsayalım, yukarıdaki çözümün çalıştığını bilmelisiniz ancak kısıtlamalar –

+0

kopyalanmayacak. Ben sadece verileri taşımak istedim. – chabzjo

1

şema Ayrıca kullanıcı CORE_DATE.table_name üzerinde seçme hibe sahip olduğundan emin olmak için gereken hibe bu

3
usage: COPY FROM [db] TO [db] [opt] [table] { ([cols]) } USING [sel] 

    [db] : database schema string, e.g., grprass/[email protected], pplan/[email protected] 
    [opt] : ONE of the keywords: APPEND, CREATE, INSERT or REPLACE 
    [table]: name of the destination table 
    [cols] : a comma-separated list of destination column aliases (optional) 
    [sel] : any valid SQL SELECT statement 

SQL> COPY FROM scott/[email protected] TO scott/[email protected] insert mytable using select * from mytable;