<HOME  <お願い事項   <Access2002 TOP   <Access2000 TOP   <サイト内検索
 Access97データベース工作室>郵便番号の検索
  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15



ちょっと横道にそれて・・・。このmdbがどれくらいのサイズか、偵察です。
エクスプローラなどでも確認できますし、アイコン(ショートカットじゃないですよ)を右クリックすればプロパティを表示できますよね。

「うっ!16バイト違うぞ!」??・・まあ、まったく同じにはならないですよ。
アバウトですからね。
だれもがピッタシ同じサイズとはならないと思いますけど、だいたいこんな感じ。
テーブル一個でもう10mb超えちゃうんですね。

おそるべし郵便番号。


【全国一括じゃなくて、必要な都道府県の分を混ぜて使うとするか】

さらにちょっと横道にそれて、例えば「東京」と「神奈川」のふたつの県の郵便番号ファイルだけダウンロードした場合をお話します。
多分、13tokyo.lzhとか14kanagawa.lzhとか、そんな名前のファイルだと思います。
これを解凍して、2度、インポート作業をすることになります。

つまり、まず片方を新規テーブル作成の形でインポートして適当なテーブルを作り、そのテーブルにもうひとつの方をインポートしてくればいいわけです。
インポートは通常、既存のテーブルにインポートする場合、レコードの新規追加状態になりますので、その辺の特徴をうまく生かして取り込んじゃおうというわけです。
もちろん、「東京」をインポートした次に、「神奈川」と「埼玉」と「千葉」と、全部で4つのデータを統合することもできちゃいますよね。
全国分いらないけど・・・というときは、こんなふうにひとつずつ丁寧にインポートしてみてください。
仮に東京都の郵便番号のファイル13tokyo.csvをインポートしてきたとしますよね。

ただし、これには少々条件があります。
さっきの全国一括のインポートの例のように、上のウィザードの画面内でフィールド名を変更したりすると、2つめのテーブルのフィールドとどう結び付けていいかわからなくなっちゃいそうですよね。実際そうみたいで、「インポートエラー」とかぬかしおって仕事しないです。

ので、この場合は、とりあえず変更せずに(あたしは個人的には、一番左端のフィールド1は長整数型ではなくてテキスト型でインポートした方がいいなーと思うんですけど・・・フィールド1って、左から2桁が都道府県、次の3桁が市区町村をあらわしてるらしいんで、テキスト型で取ってきた方が何かと使えそうな気がするんですよね。
でも数値で取ってきても問題ないと思います)そのまんまインポートします。
フィールド2も、フィールド10からフィールド15も、みんなそっくりそのまま。

で、なんか適当な名前をつけて新規にインポートして、適当なテーブルができます。
新規につけるテーブル名は、同じデータベースの中でダブらなければなんでもいいです。
この辺の名前の付け方とかは、みなさんもうオッケーですよね。
仮に[郵便テーブル]とつけたとします。

で、次に、「神奈川」の分の14kanagawa.csvを、[郵便テーブル]に、これまたそのまんまインポートします。

と、その[郵便テーブル]を開いてみてみると・・・。

ピンクの線のとこで、東京と神奈川、別のデータになってること、おわかりいただけます?

テキストファイルインポートすると、追加どんどん追加されていくわけですね。

んで、取り込んだあと、いらないフィールドだけ削除してしまえばいいですよね。例えばフィールド2。
もうよっぽどのことがないと、5桁の郵便番号って必要ないんじゃないでしょうかねぇ。

削除は、フィールド名(赤いとこ)を右クリックすれば、列の削除というメニューを選択できますんで、これで確認しながら削除するとよいでしょう。

これは他のページでも何度かお話しているかもしれませんが、Accessはレコード単位でリアルタイムにデータを更新していきます。
うっかり違うフィールドを削除してしまって、「あー間違えちゃった、保存しないで閉じよう」とかいっても、もう削除されてしまってます。
表計算ソフトとはわけが違うので、削除という動作にはことのほか新調になる必要があります。

といっても、このメッセージにびびって[いいえ]をクリックしちゃっていては、いつまでたってもいらないデータは消えません。
選んだフィールドに間違いがないかどうかを確認して、[はい]の方をクリックしましょう。

で、後は、フィールド名を分かりやすいものに変えていけばよいでしょう。
デザインビューに切り替えてやってもいいですが、フィールド3がなんだったかとか、よくわからんですよね。
データシートビューの状態でも、黄色い印をつけたとこを無理矢理ダブルクリックすればカーソル出てきますから、フィールド名を直接入力して変更してください。

これももうみなさんオッケーだと思いますが、フィールド名は後でちょこちょこ変更したりしないこと。
いろんなところに影響が出て開発効率が落ちます。
めんどうです。後で変更することはできますけれど、できるだけこの時点で決定して、テーブルのデザインは落ち着かせておくこと。


話は戻りまして、次に「事業所のデータ」をどうするか考えようと思います。Jigyosyo.csvってやつですね。
ほら、よくハガキ出すときとか、郵便番号と会社名だけ書けば届くようなのって、あるじゃないですか。
大きい会社とか、大学とか、高層ビルとか、フジテレビとか・・・。ああいうののデータですよね。

これは必要ないって方もあると思います。

郵便番号のテーブルと、事業所関連のテーブル、ふたつ分けて使ってもいいし、ひとつにまとめて大きな郵便番号テーブルを作ってもよさそうですね。
どっちのがいいのかなぁ。

どっちのがいいと思います?どうしよう。うーん・・・。

練習ってことで、ふたつのテーブルをひとつにまとめて、大きな郵便番号テーブルを作ってみましょうか。
後のことはそれから考えましょう。

これはよく見ると、通常の郵便番号のデータと、フィールドの並び順や構造が違うみたいですね。
他の郵便番号にないフィールドもあるみたいだし。こういうのは、直接追加インポートは無理ですね。

Accessは表計算ソフトじゃないんで、フィールドがずれちゃうとどうしようもなくなっちゃいますよね。
例えば、このまんまインポートすると、ひとつめのフィールドは市区町村番号みたいなんで、これはオッケーですけど、ふたつめのフィールド、これ、どう見てもその企業や団体名の読み仮名じゃないです?でも、さっき作った郵便番号のテーブルは、ふたつめのフィールドは7桁の郵便番号でしたよね。

7桁の郵便番号のフィールドに、読み仮名が入ってきちゃうことになりますよね。
表計算ソフトならマウスでドラッグして移動、ってこともできますけど、きちんとテーブルの定義を定めてつかうデータベースソフトではそんなことはありえません。

ここのとこだけ見ると、「Accessって使えない、Excelの方が便利」っていう人もいると思います。
でも、あたしに言わせりゃ、マウスで列をずらせちゃうソフトのどこがデータベースなんだって感じしますけどね。
表計算ソフトは表計算ソフト。AccessはAccessです。

なので、とりあえず新規のテーブルとしてインポートし、ふたつのテーブルをひとつにまとめるという方向で作業を進めます。
名前はなんでもよいですよ。