2009-05-15 10 views
7

INSERT INTO (...) SQL文を使用して、1つのOracleスキーマ(CORE_DATA)から別のスキーマ(MY_DATA)にデータをコピーしようとしています。SQLを使用したOracleスキーマ間でのデータのコピー

SQL文はどのように見えますか?両方へのアクセス権を持つユーザーとしてログインし、スキーマ名を持つ

答えて

17

プレフィックスあなたのテーブル名:

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

テーブルは両方のスキーマで同じように定義されていると仮定すると、上記の表からすべてのレコードをコピーしますCORE_DATAのtable_nameをMY_DATAのtable_nameという名前のテーブルに指定します。

+0

のための任意のテーブルの権限を作成する持っている必要があります。また、ユーザーがCORE_DATE.table_nameに助成金を選択していることを確認する必要があります。私はあなたのユーザーがMY_DATE.table_name – Owen

+0

に適切な権限を持っていることを前提としていますが、上記のソリューションが動作することを知っておくべきですが、制約はコピーされません。 –

+0

ありがとう。とにかくデータを移動させようとしていました。 – chabzjo

1

あなたのスキーマがグラントはこの

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; 
関連する問題