Mysql
 sql >> база данни >  >> RDS >> Mysql

Никога да не изтривате записи? Добра идея? Обичайно?

В една от нашите бази данни направихме разлика между transactional и dictionary записи.

С няколко думи, transactional записите са неща, които не можете да върнете назад в реалния живот, като обаждане от клиент. Можете да промените името на обаждащия се, състоянието и т.н., но не можете да отхвърлите самото обаждане.

Dictionary записите са неща, които можете да промените, като например задаване на city на клиент.

Transactional записии неща, които водят до тяхта никога не са били изтривани, докато dictionary тези могат да бъдат изтрити.

Под „неща, които водят до тях“ имам предвид, че веднага щом записът се появи в бизнес правилата, което може да доведе до transactional запис, този запис също става transactional .

Например city могат да бъдат изтрити от базата данни. Но когато се появи правило, което казваше „изпратете SMS за всички клиенти в Москва ", градовете станаха transactional записи също, или няма да можем да отговорим на въпроса „защо този SMS бъдете изпратени".

Основното правило за разграничаване беше следното:само ли е дейността на моята компания?

Ако някой от моите служители вземе решение въз основа на данни от базата данни (например, той направи отчет, въз основа на който е взето някакво управленско решение, а след това отчетът за данни е изчезнал), се счита за ОК тези данни да бъдат изтрити.

Но ако решението е засегнало някои незабавни действия с клиентите (като обаждане, бъркане в баланса на клиента и т.н.), всичко, което е довело до тези решения, се запазва завинаги.

Може да варира от един бизнес модел до друг:понякога може да се наложи да записвате дори вътрешни данни, понякога е добре да изтриете данни, които засягат външния свят.

Но за нашия бизнес модел правилото отгоре работеше добре.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Премахване на дубликати от резултат от множество обединения в таблици с различни колони в MySQL

  2. Присъединяване спрямо подзаявка

  3. jQuery Autocomplete (Remote) - пример

  4. има ли mysql функция за декодиране на html обекти?

  5. Как да предотвратим създаването на записи, където стойността на две полета е една и съща?