プロが教えるわが家の防犯対策術!

今、以下の仕様でバッチファイル作成を頼まれてますが、ツール作成の経験がないので教えて下さい。

以下、仕様です。
1.DBから対象項目を抽出し、txtもしくはcsv出力
2.抽出した項目を1件づつ読み、その項目が別ファイルに存在するか検索する。
3.検索して存在しなかったら、マスターの項目をファイルに出力する。

以上がやりたい事ですが、1番のDB抽出までは出来ました。
OS:windows2012
DB:RDB

そもそもこの仕様が可能なのか分からないですが、実現する為のコマンドが何かでつまずいています。

すいませんが、宜しくお願いします。

質問者からの補足コメント

  • nic 1821さん回答ありがとうございます。

    早速試してみようと思いますが、一つだけ追加で教えて下さい。
    一件づつ読み込むのはfor文を使用で理解しましたが、その際の別ファイルのデータ検索方法がちょっと理解不足なので教えて頂けないでしょうか?

    すいませんが、よろしくお願いします。

      補足日時:2016/06/17 10:05

A 回答 (2件)

回答の通り、抽出したファイルからの1行を、更にforで別ファイルを1行ずつ読んで(抽出したファイルから1行ずつ読むのと同様)、ifで比較ということです。


ただ、そういえばと思い出したんですが、findstr(回答のサイトにあります)を使えば、別ファイルを1行ずつ読む必要はないかもです。
比較はifではなくfindstrが行うことになるので、あったかなかったかはfindstrの結果から判断することになると思います。
    • good
    • 1
この回答へのお礼

助かりました

nic 1821さん

再度の回答ありがとうございました。
findstrの使用で意とした結果が得られました!

まだまだ分からない所が出ると思うのでまたよろしくお願いします。

お礼日時:2016/06/17 22:59

forコマンドを使うと、ファイルを1行ずつ読み取れて、かつ、区切り記号を指定して分割もできます。


※詳細は”for /?”
抽出したファイルを1行ずつ読む度に、別ファイルを1行ずつ比較しながら全て読んで比較することになるかな。

比較はifでできます。
※詳細は"if /?"

出力はechoでリダイレクト先に結果を入れるファイルを指定する感じかな。

※参考サイト
https://msdn.microsoft.com/ja-jp/library/cc77808 …
    • good
    • 0
この回答へのお礼

nic 1821さん回答ありがとうございます。

早速試したいと思っていますが、1つ追加で教えて下さい。
1件づつの読み込みはfor文を使用する事は理解しましたが、その際に別ファイルの具体的な検索方法がちょっと理解不足となっているのでよろしくお願いします。

お礼日時:2016/06/17 10:23

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

関連するカテゴリからQ&Aを探す