エンタープライズ:特集 2003/07/25 18:19:00 更新

[Java Developer特別企画]2003年9月号
知っておきたいデータベース移行術「SQL Server→Oracle編」 (7/15)

JAVA Developer 2003年9月号より転載

・ラージデータ型
 SQL Serverでは、8000バイト以上を超えるデータの取り扱いは、テキストの場合はtext型、バイナリデータの場合はimage型を使います。

 Oracle9iではこの両データ型に対してそれぞれテキストはclob、バイナリはblob型があり、そのまま移行が可能です(clob/blobという名前は、SQL99で分類されているCharacter Large OBject、Binary Large OBjectの略でこちらのほうが一般的です)。

 SQL Serverで取り扱っているラージデータ型は格納できる最大サイズが約2Gバイト(正確には2Gバイト−2)であるのに対して、Oracle9iの場合は4Gバイトまで可能であり、サイズを気にせずにSQL Serverからデータを移行できます。

表4 ラージデータ型の移行
SQL Server 2000 Oracle9i
大容量のバイナリデータ image(最大約2Gバイト) blob(最大約4Gバイト)
大容量の文字列データ text/ntext(最大約2Gバイト) clob/nclob(最大約4Gバイト)

・そのほかの特殊な型
 SQL Serverでは特殊なデータ型がほとんどないため、Oracle9iへのデータ型の移行はここまで紹介した内容で問題なく行われるケースが多いようです。

 例外的なものを紹介すると、SQL Serverにはuniqueidentifier型が存在し、全データベース中の全データの中で一意の値を持たせるデータ型などが存在します。J2EEの適用範囲でどのように使うと便利なデータ型なのかがわかりませんが、こういったほんの一部の例外には注意する必要がありそうです。

 また今回は紹介しませんが、SQL Serverでユーザー定義データ型を使用している場合、Oracle9iへ移行可能ですが、定義の方法や使用方法に違いがあり注意が必要です。

[JAVA Developer特別企画]
知っておきたいデータベース移行術
「SQL Server→Oracle編」
(1)データベース移行に伴う影響範囲〜JDBCドライバ
(2)移行の実際〜認証/権限と命名規則
(3)データ型の移行〜数値型
(4)データ型の移行〜文字型
(5)データ型の移行〜日付データ型
(6)データ型の移行〜ラージデータ型/そのほかの特殊な型
(7)表定義に関する情報の移行
(8)関数の移行〜数値関数
(9)関数の移行〜文字関数
(10)関数の移行〜日付関数
(11)関数の移行〜そのほかの関数
(12)演算子の移行
(13)文法/Transact-SQL文/索引/ビュー/トリガーなどの移行
(14)メリットと注意事項〜移行ポイントを再確認

関連リンク
▼JAVA Developer
▼定期購読のご案内
▼バックナンバー販売協力店

JAVA Developer9月号表紙 Javaコレクションのマスターを目指せ!
JAVA Developer 9月号

大特集
病みつき! テストファースト

特集2 BEA WebLogic
[特別企画]
・コレクションフレームワークとデータ構造
・知っておきたいデータベース移行術
 「SQL Server→Oracle編」
・Webアプリケーションセキュリティ

前のページ | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 次のページ

[西脇 資哲,JAVA Developer]