アプリ版:「スタンプのみでお礼する」機能のリリースについて

仕事で88万件のデータに対して、項目AをBに置き換える作業を行いました。
ですが88万件という件数を想定していなかったため、ExcelやDFツールでの変更前後の比較が行えませんでした。
検証結果として88万件の内、項目AがBに置き換わった以外は変更されていないという検証結果が必要です。
(88万件の中から必要な項目だけを集計して、比較することは認められています。)
お客さんへの検証結果の報告が明日(4/16)中のため、本当に困っております。

明日Accessに詳しい先輩方には方法を伺いますが、もしもこれをご覧になった皆様から事前に方法をご教授いただけないかと思い投稿させていただきました。
Accessはまったくの初心者のため可能な範囲で詳しくご教授いただけると非常に助かります。

以下は項目AをBに置き換えた作業手順です。
(実際のSQLは職場にあるため正確とは言えませんが。)
気になる点としましては「出力したテキストの容量が5GBにもなってしまい、Accessで取り込むことが出来るのか?」という点と、
「データ項目だけではなく、select文からスプールしているがAccessで取り込むことが出来るのか?」という点です。

(1)まずSQL Plusを起動しました。
(2)次に以下の順にSQLを実行しました。

スプールオン(項目は「,」カンマ区切りで出力しています。)

select * from テーブル名
where 抽出条件
order by 項目

スプールオフ

update テーブル名
set 項目B
where 抽出条件

スプールオン

select * from テーブル名
where 抽出条件
order by 項目

スプールオフ



commit

以上です。
本日中に回答いただけなかったとしても今後の参考にさせていただきたいので期限後でも投稿していただけるとありがたいです。
皆様のご協力何卒よろしくお願い致します。

A 回答 (1件)

88万件はどうだったかなぁ、50万件ならやったことあります。


Accessには作成できるファイルサイズなどの制限もあるので、Accessのヘルプで「制限」と検索してみるといいですね。

ちなみに
2010は
http://office.microsoft.com/ja-jp/access-help/HA …
2003は
http://office.microsoft.com/ja-jp/access-help/HP …
です。


もし容量制限でインポートできなければ、行か列かで分割して複数のmdbファイルにすることを考えたほうがいいでしょうね。
あとはまぁどこまで証跡として残さなきゃいけないのか次第なんでしょうね。




あとは余談。

update テーブル名
set 項目B
where 抽出条件

ではなくて

update テーブル名
set 項目A=B
where 抽出条件

なのでは?

名称かコード値かなにかが変わって一括で変えた感じなんでしょうか。
もしそうで文字列なら、文字列の途中に含まれている場合はすくえてない可能性があるんでチェックしたほうがいいでしょうね。
    • good
    • 0
この回答へのお礼

早々のご回答ありがとうございました。
ファイル分割してAccessに取り込み、何とか業務に支障をきたすことなく検証を終えることができました。
どうもありがとうございました。

お礼日時:2012/04/30 12:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!