LoginSignup
2

More than 5 years have passed since last update.

DB2DBA: テーブルからテーブルへの直接データLOAD

Last updated at Posted at 2017-07-31

LOADコマンドの入力ファイルにCURSOR名を指定することで、テーブルからテーブルへ直接データをLOADすることが出来ます。

方法

以下のように、LOADコマンドにDECLAREしたCURSOR名とデータタイプCURSORを指定するだけです。

DECLARE csr CURSOR
    FOR SELECT * FROM schema1.table1 ;

LOAD FROM csr OF CURSOR INSERT INTO schema2.table2 ;

さらに、CURSORをリモートDBのテーブルに対して定義することで、DB間でデータを高速にコピーすることもできます。これはフェデレーションの設定がなくても、リモートDBをカタログさえしていれば実行可能です。

CATALOG TCPIP NODE rmtinst REMOTE hostname SERVER svcname ;
CATALOG DATABASE rmtdb AT NODE rmtinst ;

DECLARE csr CURSOR
    DATABASE rmtdb
    USER username
    USING password
    FOR SELECT * FROM rmtschema.rmttable ;

LOAD FROM csr OF CURSOR INSERT INTO localschema.localtable ;

参考

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2