Това зависи от вас и обикновено въпросът е колко важни са данните, които изтривате, или колко толерантни искате да бъдете към злополуките.
Методът, който обичам да използвам, е да имате клонирана база данни за елементи, които искате да изтриете. При изтриване копирайте съдържанието на избрания ред в нова база данни, след което изтрийте. Наличието на допълнителни „изтрити“ статии или елементи във вашата система просто използва повече място и в крайна сметка ще забави заявките (потенциално).
След като попълните вашата база данни за „изтриване на статии“, изпълнете дъмп, архивирайте, съкратете.
Да приемем, че имате база данни CMS с таблица, наречена СТАТИИ, която искате да съхранявате изтрити публикации, ние ще създадем идентична база данни със същата структура на таблицата:
CREATE DATABASE `deleted`;
CREATE TABLE deleted.cmsarticles LIKE CMS.ARTICLES;
Във вашия PHP скрипт, който изтрива съдържанието, бихте направили нещо подобно:
//GRAB THE ID OF THE ARTICLE YOU ARE DELETING, MAKE SURE TO SANITIZE!
$article_id=$_POST['id'];
if(is_numeric($article_id) {
$dbconnect=databaseFunction();
$result=$dbconnect->query("SELECT `row1`,`row2` FROM `ARTICLES` WHERE `id`=$article_id");
if($result->num_rows!=0) {
$row=$result->fetch_array(MYSQLI_ASSOC);
//Open new connection to deleted database
$dbconnect2=otherDBFunction();
$dbconnect2->query("INSERT INTO `cmsarticles`(row1,row2) VALUES ({$row['row1']},{$row['row2']}");
$dbconnect->query("DELETE FROM `ARTICLES` where `id`={$_POST['id']}");
}
}