街中で見かけて「グッときた人」の思い出

一昨日、Accessについて質問をさせていただき(http://oshiete.goo.ne.jp/qa/7723986.html)、無事に解決いたしましたが、またすぐにわからないことが出てきてしまいました。。。。

前回の質問で、生徒の名簿と入退室記録を同じテーブルにするのではなく、「生徒名簿テーブル」と「入退室テーブル」を分けると良いと教えていただきました。

『生徒名簿(と入退室)』も『講師名簿(と任期)』も『寄付者名簿(といつの寄付か)』等もみんなこのやり方でやろうと思っていたのですが・・・中には、生徒であり寄付者でもある、という人や、講師でもあり寄付者でもある、という人もいます。

何か訂正があった時に一度の訂正で済むように、ID番号をオートナンバーでつけて管理しようと思ったのですが、『生徒』にも『寄付者』にも名前が出てくる人をオートナンバーでつけるとIDが違ってしまいます。

氏名と住所を主キーにして管理しようかとも思いましたが、番号と違って、特に住所なんかは色んな表記の仕方があり、少し書き方が違えば例え同じ人物でも別人と判断されてしまいます。

氏名だけでは同姓同名がいるかも知れませんし・・・。

このような場合はどうすればよろしいでしょうか。

オートナンバーではなく数値型で1人1人に番号を付けて管理するしかないでしょうか。

その場合手動になるので、その時点で自分が間違うのではないかと心配なのですが(汗)

よろしくお願いいたします。

A 回答 (2件)

氏名、住所、電話番号、、、などの個人情報は、名簿テーブル一つにまとめます。



以下、設計例

テーブル 名簿
フィールド
名簿ID オートナンバー型 主キー
氏名
住所
電話番号
・・・
・・・

テーブル 生徒入退室
名簿ID 主キー
入室年 主キー
退室年(在籍中は9999とする)

テーブル 講師任期
名簿ID 主キー
就任年 主キー
退任年(任期中は9999とする)

テーブル 寄付年
名簿ID 主キー
寄付年 主キー
寄付額 通貨型


入室年 や 就任年 や 寄付年 だと年単位でしか管理できませんので、もし、一年間に複数回寄付したり、入退室したり、就退任する場合は、日付/時刻型にして、入出日、就任日、寄付日 という形にする必要があります。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

前回の質問の時には2つのテーブルにするという発想がありませんでしたが、今回は1つのテーブルに名簿だけで1度まとめるという発想がありませんでした(汗)
例まで挙げていただきありがとうございます。
生徒、講師、寄付者以外にも、コンサート来客者やイベント参加者等、たくさん分けなければいけない項目があるのですが、とりあえず、名簿テーブルに全員入れてから分けると良いのですね!

まだまだ名簿整理が始まったばかりで、また疑問が出てきた時にはよろしくお願い致します。

お礼日時:2012/10/02 16:23

"このやり方"で正しいと思いますが、



名簿テーブルは共通で利用できますよね。


名簿テーブル、生徒テーブル、講師テーブル、寄付者テーブル


氏名を名簿テーブル1つにしてしまえばオートナンバーのIDを

キーにしても問題ないですよね。


ちなみに氏名や住所をキーにするのはよくないです。

というかテーブルを分割する意味がなくなってしまいます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

前回の質問の時には2つのテーブルにするという発想がありませんでしたが、今回は1つのテーブルに名簿だけで1度まとめるという発想がありませんでした(汗)
例まで挙げていただきありがとうございます。
生徒、講師、寄付者以外にも、コンサート来客者やイベント参加者等、たくさん分けなければいけない項目があるのですが、とりあえず、名簿テーブルに全員入れてから分けると良いのですね!

まだまだ名簿整理が始まったばかりで、また疑問が出てきた時にはよろしくお願い致します。

お礼日時:2012/10/02 16:21

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