sa_migrate システムプロシージャを使用して、すべてのテーブルを移行できます。
前提条件
次のシステム権限が必要です。
CREATE TABLE または CREATE ANY TABLE (ベーステーブルの所有者でない場合)
SELECT ANY TABLE (ベーステーブルの所有者でない場合)
INSERT ANY TABLE (ベーステーブルの所有者でない場合)
ALTER ANY TABLE (ベーステーブルの所有者でない場合)
CREATE ANY INDEX (ベーステーブルの所有者でない場合)
DROP ANY TABLE (ベーステーブルの所有者でない場合)
ターゲットデータベース内に移行対象のテーブルを所有するユーザが必要です。
外部ログインを作成するには、MANAGE ANY USER システム権限が必要です。
内容と備考
リモートデータベースで、テーブルの所有者が異なっていても名前が同じ場合、それらのテーブルはターゲットデータベースに移行すると 1 人の所有者に属します。したがって、一度に移行するテーブルは、1 人の所有者に関連付けられたテーブルだけにしてください。
ターゲットデータベースに移行後、テーブルをすべて同じユーザによって所有されないようにする場合は、ターゲットデータベース上の所有者ごとに、local_table_owner 引数と owner_name 引数を指定して sa_migrate プロシージャを実行します。
Interactive SQL からターゲットデータベースに接続します。
リモートサーバを作成してリモートデータベースに接続します。
(省略可) リモートデータベースに接続できるように外部ログインを作成します。この手順は、ユーザがターゲットデータベースとリモートデータベースで異なるパスワードを使用している場合、またはターゲットデータベースで使用しているユーザ ID とは異なるユーザ ID でリモートデータベースにログインする場合にのみ必要です。
[SQL 文] ウィンドウ枠で、sa_migrate システムプロシージャを実行します。table_name パラメータと owner_name パラメータの両方に NULL を指定すると、データベース内のシステムテーブルを含む、すべてのテーブルが移行されます。
例:
CALL sa_migrate( 'local_user1', 'rmt_server1', NULL, 'remote_user1', NULL, 1, 1, 1 ); |
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |