У меня есть большой проект, в котором мне нужно организовать удаление нескольких вещей, таких как клиенты, заказы, продукты и т. Д. Но есть момент, когда мне нужно сделать архив для восстановления.
Итак, какое решение лучше.
Я исследовал и некоторые мои идеи не увенчались успехом.
1. Сначала было сделано все строки со статусом удаляется. Но это затрудняет выбор и замедляет работу программы.
2. Идея заключалась в том, чтобы создавать отдельные таблицы для удаленных товаров, но это делало проблему с точки зрения заказов, поскольку я не мог управлять отношениями между не удаленными заказами и удаленными клиентами и продуктами.
Пожалуйста, если есть некоторые идеи, как это может быть решено, пинг меня.
Ну, твоя первая идея здесь лучшая. Это не должно создавать такие большие проблемы при выборе, поскольку вы всегда получаете доступный параметр WHERE (хотя это займет некоторое время и работа). Тогда проще всего восстановить все ваши данные.
И это не должно сильно замедлять вашу программу, поскольку базы данных создаются для обработки большого количества данных. Вы должны сначала оптимизировать свои запросы, это в основном проблема. Но, как я уже сказал, ваша первая идея была хорошим способом, которым вы движетесь
Вы можете добавить поле в вашей таблице, назвав его «видимым», которое имеет два значения 0 или 1.
тогда вы можете использовать такой запрос:
SELECT * FROM tablename WHERE visible = 1 // показывает все записи, которые имеют это значение, теперь, если вы хотите, чтобы запись была удалена (фактически скрыта), перейдите к вашей таблице и измените поле видимой записи на 0, теперь оно не будет отображаться на вашей странице, но все еще существуют в вашей таблице, чтобы показать эту запись снова изменить виден на 1, надеюсь, это поможет.