2016-11-22 16 views
0

現在、調査システムのデータベースを設計しようとしていますが、問題があります。システムのコンセプトは、調査を完了した従業員からの店舗調査回答を&で収集することです。調査は従業員の電子メールに送信され、そこから従業員が調査を完了し、回答が保存されます。同社の高い業績は、今後の対応を見ることができるでしょう。アンケートを送信してから1週間以内に回答が記録されない場合、システムはアンケートを送信して調査を完了します。調査システムのデータベース設計

私が今まで持っていたテーブルは、従業員、アンケート、質問、回答、およびリマインダです。

私の主な問題は、リマインダーテーブルの接続方法や場所がわからないことです。

+0

テーブルを接続することによって何を意味するのかを詳しく説明します。 – Laxman

+0

[調査のためのデータベース設計](http://stackoverflow.com/questions/1764435/database-design-for-a-survey)の可能な複製 – inye

答えて

0

リマインダーを送信する方法に応じて、いくつかの方法があります。

アンケートに基づいてリマインダーを送信する場合(従業員が以前に回答したかどうかにかかわらず)、survey_idにリンクすることができます。

アンケートで従業員をターゲティングする場合は、employee_idとsurvey_idの両方をリマインダーテーブルに保存することができます。したがって、リマインダーは調査を完了しない特定の従業員にのみ送信されます。

0

これは要件に応じて異なります。リマインダを1つだけ送信する場合は、別のテーブルは必要ありません。 Surveyテーブルに「通知済みのフラグ」を表示するだけです。あなたがそれを送ったときに気にしていれば、 "送ったリマインダの日付"かもしれません。

複数のリマインダを送信し、送信したリマインダを追跡したい場合は、リマインダからサーベイまで多対1の関係が必要です。つまり、調査IDをリマインダテーブルに追加します。私は、個々の質問ではなく、調査のリマインダを送信すると仮定しています。また、複数の調査がある場合は、それぞれの調査についてリマインダを送信することがあります。

関連する問題