KNOWLEDGE

コーソルの技術情報

コーソルでは経験豊かなエンジニアが、Oracle Databaseに関するお役立ち情報を発信しています。
データベースのチューニングや設定にお役立ていただけます。

【Oracle版】Toadを使った簡単テーブルデータ重複検出・修正

■概要
 ToadのData Duplicatesを使うと、テーブル内で重複しているデータを簡単に抽出できます。
 通常、テーブルの列に適切な制約がかけれれていれば、その列への重複データは避けることができます。
 一方、制約がついていない列については、データ重複を避けることができません。
 もし、誤操作により誤ったデータが投入された可能性がある、誤ったデータ投入がされていないかを確認したいといった
 ニーズがあった場合、Data Duplicatesを使うことで簡単に指定した列の重複データを抽出可能です。

■利用可能エディション
 すべてのエディションで利用可能

■重複検出手順
 1) デスクトップ上の『Toad for Oracle』アイコンをダブルクリックしToad for Oracleを起動する。

図1:Toad for Oracleアイコン

 2) DBへの接続画面が表示されたら、DB接続に必要な情報を入力して『Connect』をクリックすると、
   Toad for Oracleトップ画面が表示される。
    必要な情報
     - DBユーザ名
     - DBユーザパスワード
     - DBへの接続識別子

図2:DB接続情報入力画面
図3:Toad for Oracleトップ画面

 3) Toadトップ画面が表示されたら、[Database]-[Compare]-[Data Duplicates]をクリックする。

図4:Data Duplicates起動画面

 4) Find table DuplicatesのChoose Table画面が表示されたら、下記入力項目を設定し、『Next』をクリック(⑤)する。
     ①データベース接続情報(現在Toadを接続しているDBの接続情報が表示される)
      ※変更したい場合には『…』ボタンで変更する。
     ②重複チェックしたいオブジェクトの所有者を指定
     ③重複チェックしたいオブジェクトのタイプ(Table/View/Materialized View)を指定
     ④オブジェクト名を指定
   例ではSCOTTユーザのEMPテーブルを指定している。
   EMPテーブル内では、赤枠のレコードでEMPNO以外の列でデータが重複している。

図5:Choose Table画面
図6:EMPテーブル内データ確認結果

 5) Find table DuplicatesのChoose Columns選択画面が表示されたら、重複チェックしたい列を選択(①)する。
   全列をチェックしたい場合には『all columns』、一部の列のみチェックしたい場合には『checked columns』を選択する。
   ※all columnsをチェックした場合、一部の列データで差分があった場合には重複と検出されないので注意
   ※checked columnsで選択した列でデータの差分があった場合には重複と検出されないので注意
    そのため、列を指定する場合には重複データが入っていてはいけない列を指定すること
   『checked columns』を選択した場合、チェックしたい列のチェックボックスにチェック(②)を入れる。
   重複チェックしたい列の選択が完了したら、『Run』をクリック(③)して、チェックを実行する。
   例ではENAME、JOB、HIREDATE、SAL、DEPTNOを指定している。

図7:Choose Columns画面

 6) 重複チェックが完了すると、結果画面が表示される。
   結果画面が表示されたら『All duplicate rows』を選択し、重複個所をすべて表示させる。
   例では重複チェック対象列のENAME、JOB、HIREDATE、SAL、DEPTNOすべてでデータが重複していることが確認できる。
   重複が確認できたら、不要なレコードを削除、もしくは値を修正して対処を行う。

図8:重複チェック結果画面

Data Duplicates利用手順は以上です。

データ移行で本機能を活用される場合、次の確認もできますで合わせてご確認ください。
 - 移行元・移行先のデータベース比較・修正ができるCompare Databases
 - 移行元・移行先のスキーマ比較・修正ができるCompare Schemas
 - 移行元・移行先のテーブルデータ比較・修正ができるCompare Data
 - 誰でも簡単にできるデータポンプエクスポート(expdp)
 - 誰でも簡単にできるデータポンプインポート(impdp)
 - 任意のオブジェクトDDLを簡単に抽出できるExport DDL

Toadは30日間、フル機能で無償トライアルも可能です。
Toadに少しでも興味を持っていただけたなら、是非次のページもご参照ください。
 ・トライアルのご依頼はこちら
 ・Spotligh概要ページはこちら
 ・Spotlight on Oracle機能紹介ページはこちら
 ・Spotlight on SQL Server機能紹介ページはこちら
 ・Toad概要ページはこちら
 ・Toad for Oracle機能紹介ページはこちら
 ・Toad for SQL Server機能紹介ページはこちら
 ・Toadの製品紹介資料ダウンロードはこちら