• ベストアンサー

access高速化処理 初心者です。

当方初心者です。 vb2005で、アクセスとtxtを使って次のようなプログラムを作りたいです。 access T_TABLE1(カラム4つ) データ3000件程 都道府県 市区町村 町名 丁目 沖縄県 ○○市 ○町 n丁目 ~~~ 沖縄県 ◎◎市 ○町 n丁目 txt このテキストは、カンマ区切りの文字の羅列です。200文字程 △字,○字 ■字,□字 vb2005で、txtに含まれる文字(○字)が、T_TABLE1の中の何れかのカラムに 含まれていた場合、その文字をtxtから消すというプログラムを作りたいです。 できるだけ高速に処理するにはどのような手法が考えられるか、 アドバイスいただけましたら幸いです。(accessをoracleに置き換えることも やろうと思えば可能です) よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

Excelに展開したらどうですか? シート1にはテーブル内容(4列×3000行)を展開し、シート2には テキストファイルをCSVファイルとして読み込んでおきます。 シート2の各セルを1個ずつ取り出してはシート1内を検索し、 存在すればシート2の該当セルを削除します。 残ったシート2をCSVファイルとして再度保存すれば、目的は達成 できるのではないでしょうか。 これが最速かどうかは分かりませんが、200個のLike条件式をOR結合 するのはスペック上、難しいのではないでしょうか。 仮に、出来たとして、テキストファイルの1部を消すような更新は 難しいですよ。

その他の回答 (1)

  • ShowMeHow
  • ベストアンサー率28% (1424/5027)
回答No.2

直感で考えると、 DBは使わずに、テキストファイルとしてVBで処理するほうが早いんじゃないかな? 何の根拠もないけど。(というか、根拠を出すためには双方やってみないといけない。)

関連するQ&A