2

Microsoft の SQL Server 移行アシスタント ツールを使用して SQL Server 2008 に移行した Oracle 11g ソースがあります。Oracle ソースには、長い raw 列を含むテーブルがありました。移行に使用された型マッピングは long raw -> varbinary(max) でした。SQL 開発者を使用して Oracle データを表示すると、列はすべての行に RAW しか表示されません。ただし、SQL Server では、移行されたデータを文字列形式で表示できます。

OracleのデータをSQLサーバーのデータと検証またはクロスチェックするにはどうすればよいですか、または少なくとも長い生の列の検証は可能ですか?

4

1 に答える 1

1

Oracle 11g データベース サーバーに引き続きアクセスできる場合は、Oracle データベースで、SQL Server データベースへのリモート データベース リンクを作成します。詳細については、 http://www.dba-oracle.com/t_database_link_sql_server_oracle.htmを参照してください。

次に、引き続き Oracle で、ローカルの Oracle テーブルの LONG RAW 列のデータを読み取り、リモートの SQL Server テーブル (移行されたテーブル) のデータと比較する PLSQL ルーチンを記述します。

データを読み取って比較するには、組み込みの PLSQL UTL_RAW パッケージを使用する必要がある場合があります。使用方法については、http://docs.oracle.com/cd/B28359_01/appdev.111/b28419/u_raw.htm#BABFGDDG を参照してください

LONG RAW 列が 11g で一般的にどのように機能するかについては、次 を参照してください 。 /B28359_01/server.111/b28286/sql_elements001.htm#SQLRF00201

Oracle 8i などの古い Oracle データベースを使用する場合、Oracle LONG RAW 列が 32K を超えると、PLSQL を使用して読み取ることができず、別のプログラミング言語を使用する必要があることに注意してください。http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:201012348073を参照してください。

于 2013-12-05T17:18:35.553 に答える