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

Най-добри практики за меко изтриване (PHP/MySQL)

Аз така го правя. Имам is_deleted поле, което по подразбиране е 0. След това заявките просто проверяват WHERE is_deleted = 0 .

Опитвам се да стоя далеч от всякакви твърди изтривания, доколкото е възможно. Понякога са необходими, но аз го правя функция само за администратор. По този начин можем да изтрием трудно, но потребителите не могат...

Редактиране: Всъщност можете да използвате това, за да имате множество „слоеве“ на меко изтриване в приложението си. Така че всеки може да бъде код:

  • 0 -> Не е изтрито
  • 1 -> Soft Deleted, показва се в списъци с изтрити елементи за потребители на управление
  • 2 -> Soft Deleted, не се показва за никой потребител, освен потребители с администратор
  • 3 -> Показва се само за разработчици.

Наличието на другите 2 нива все пак ще позволи на мениджърите и администраторите да изчистят изтритите списъци, ако станат твърде дълги. И тъй като предният код просто проверява за is_deleted = 0 , той е прозрачен за интерфейса...



  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 REGEXP?

  2. Осоляване на хешовете ми с PHP и MySQL

  3. За какво е декларацията на сокета в Ruby on Rails database.yml?

  4. Как да разбера дали моята таблица е MyISAM или Innodb

  5. codeigniter mysql ляво присъединяване включва изберете