У меня есть настройки таблицы, как показано ниже.
Table comment_flags
user_id
comment_id
Я разрешаю пользователям пометить комментарий, а затем дать им возможность отключить его, потому что они могли ошибиться.
Проблема в том, что, когда они удаляют комментарий, после того, как я удаляю запись, таблица comment_flags
получает примерно 30-40 байтов служебной информации, даже после отмены всего 5 комментариев.
Здесь в основномчто происходит: -
Пользователь помечает комментарий, поэтому я вставляю user_id
и comment_id
в таблицу comment_flags
, затем пользователь разблокирует комментарий, а я удаляю из таблицы comment_flags
user_id
и comment_id
.
Я не уверен, что причиной этого является мой SQL, я думаю, что это всего лишь оператор DELETE
в целом.
Я мог бы оптимизироватьтаблица после каждого оператора DELETE
для очистки таблицы.
Считается ли это хорошей идеей?Как все остальные справляются с этим?
Мой sql очень простой.
INSERT INTO comment_flags VALUE('$user_id', '$comment_id')
DELETE FROM comment_flags WHERE user_id = '$user_id' AND comment_id = '$comment_id'