sql >> データベース >  >> RDS >> Mysql

エントリを削除しないでください。良いアイデア?いつもの?

    データベースの1つで、transactionalを区別しました およびdictionary 記録。

    一言で言えば、transactional レコードは、顧客からの電話のように、実際にはロールバックできないものです。発信者の名前やステータスなどを変更することはできますが、通話自体を終了することはできません。

    Dictionary レコードは、cityの割り当てなど、変更できるものです。 顧客に。

    Transactional およびそれらにつながるものを記録します dictionaryの間、削除されることはありませんでした 削除しても大丈夫です。

    「それらにつながるもの」とは、レコードがビジネスルールに表示されるとすぐに、transactionalにつながる可能性があることを意味します レコードの場合、このレコードもtransactionalになります 。

    たとえば、city データベースから削除できます。しかし、「SMSを送信する」というルールが表示されたとき モスクワのすべてのお客様に "、都市はtransactionalになりました 記録も同様です。そうしないと、「なぜこのSMSを実行したのか」という質問に答えることができません。 送られます」。

    区別するための経験則は次のとおりです。それは私の会社のビジネスだけですか?

    私の従業員の1人がデータベースからのデータに基づいて決定を下した場合(たとえば、彼が何らかの管理上の決定を下したレポートを作成し、その後データレポートが消えたことに基づいて)、これらのデータを削除しても問題ないと見なされました。

    しかし、その決定が顧客との即時の行動(電話をかける、顧客の残高をいじるなど)に影響を与えた場合、これらの決定につながるすべてのものは永久に保持されました。

    ビジネスモデルによって異なる場合があります。内部データも記録する必要がある場合もあれば、外部に影響を与えるデータを削除しても問題ない場合もあります。

    しかし、私たちのビジネスモデルでは、上記のルールはうまく機能しました。



    1. 初心者向けSQLExpressを使用したPythonデータベースプログラミング

    2. SQL SERVER:2つの日付の間の合計日数を取得します

    3. サブクエリからの複数の行を単一の区切りフィールドに結合するSQLServer関数を作成するにはどうすればよいですか?

    4. MicrosoftAccessデータをExcelに簡単にエクスポートする方法