顧客から送られてきたメッセージを保存するテーブルを見てみましょう。たとえば、顧客が私たちに送信した通信への応答を送信するように要求した場合も、そのテーブルに格納したいとします。彼らが応答を要求した場合、私たちは彼らの電子メールアドレスと予想される日付を記録することによってその情報を保存します。彼らが返答を望まないのであれば、私たちは彼らの電子メールアドレスを必要としません。
Correspondences
Primary_key
Content
Date
Response_expected
Return address
Return date
または、response_expected列を完全に削除して、nullの差出人住所/差出人住所は「応答が期待されない」ことを意味し、null以外の差出人住所は応答が期待されることを意味することに同意できます。アプリケーションは、明示的な「応答が必要ですか?」をチェックするのではなく、このロジックを使用する責任があります。分野。
(この質問のために、期待される応答がyesでない限り、差出人住所と日付がnullでなければならないという制約があると仮定します...私のポイントは、この列が誤用されたり、別の目的に使用されたりしないことです)
私の質問は次のとおりです。アプリケーションがデータを解釈する特定の方法に同意する必要があるこの種の設計は受け入れられますか?一方、返信を期待していない場合は差出人住所と日付が確実にわからないため、必要以上のデータを保存しています。