項目の洗い出し(その1)
私が考えた管理情報を図解します。これで各々の情報の羅列ではなく、かたまり、関係性まで見えてくると思います。
まず名前ですが、名前は姓と名で分かれます。更に漢字とよみがあります。これ以上細かく分けることは出来ませんが、そもそも場合によっては姓と名をフィールドで分ける必要がないかもしれません。間にスペースを一つ入れる規則にすればいいわけです。更に言うと姓と名を区別する必要がない局面もあります。その場合はスペースを入れようが入れまいが、規則は作りません。
よみがなを入れている理由は2つあります。1つはもちろん漢字で読めない場合の振り仮名の役割ですが、もうひとつは並び順です。仮に漢字で並び替えた場合は、システム的には漢字コードの並びになるので、人間の目で見た場合、使い勝手がすごく悪くなります。
更に会社名となるともっと話はややこしくなります。株式会社の企業形態をとっていた場合、その表現の仕方として「株式会社」「(株)」「㈱」等があり、更に前株と後株があります。そうすると例えば「株式会社日本製作所」と「(株)日本製作所東北支店」では本来同じ会社の本店・支店なのに漢字だと希望通りに並ばないことになります。そのためにかなのフィールドが必要になってきます。その場合、企業形態は入れないようにします。つまり「にほんせいさくしょ」「にほんせいさくしょとうほくしてん」としてかなで並び替えれば、同一会社の本支店はまとまって並ぶようになります。
同じ漢字を使用していても読み方が違う場合があります。例えば「山崎」でも「やまざき」さんと「やまさき」さんがいます。逆に読み方が一緒でも漢字が違う場合があります。「さいとう」さんでも「斉藤」「齊籐」「斎藤」「齋藤」等があります。さらに日本語の場合、やっかなのがカタカナ、数字、英字が混在してくることです。「株式会社123」という会社があった場合、企業形態を除いた読み方が「わんつーすりー」、「いちにさん」、「あんどーとろあ」等様々な読み方があり得るし、数字そのままで「123」かもしれません。ちなみに「123」だった場合、昇順に並び替えた場合数字が優先されるので、4つのうちでは先頭に来ます。
このように名前の問題は奥が深く、複数の担当者が入力作業を行っていった場合に、コード化(マスタ化)をせず入力方法にもルールを設けなかった場合、類似企業名が散在することになり、管理が大変になります。名前の整理統合作業のことを「名寄せ」といいます。「名寄せ」は銀行業務の重要な作業の一つだったりします。
そして当然の事ながら同姓同名で読み方も全く一緒という人もいます。もちろんその他の属性(性別、生年月日等)で区別することもありますが、それも同じ可能性はあります。そこでテーブル設計に当たっては、その人を特定出来る必ずユニークになる番号(データベースの世界ではそれを主キーといったり、ユニークキーと行ったり、プライマリーキーと言ったりします。)を付与することになります。
一つの考え方として、管理している情報のうち必ずユニークになる情報としてTELやメールアドレスを主キーにするという方法もありますが、ここでは「生徒番号」というフィールドを追加することにします。
ここまででだいぶ枚数を尽くしてしまいましたが、性別以降の解説については次回以降に持ち越したいと思います。
- 関連記事
-
- テーブルの実装
- 属性の決定(その2)
- 属性の決定(その1)
- コード化、マスタ化
- リレーショナルテーブルの検討
- 項目の洗い出し(その2)
- 項目の洗い出し(その1)
- テーブル設計でまずやること