2015-01-09 39 views
1

I want to store deleted records in Mysql database using Codeigniter如何存储在MySQL数据库中删除记录使用笨

在简单的文字删除数据库中的记录时,但我想删除的记录保存在其他表在我的数据库 我在mysql数据库add_news表在这表有6列ID,标题,新闻,图像,出版日期,状态

+0

的解决方案,我认为easyest方式是重载这个函数/方法,它是用来删除记录,并把它添加备份功能。 – violator667

+1

如果你想删除列不被删除物理,为什么你没有另一列“删除”,而不是其他的。 – avisheks

回答

2

最后,我有这个问题

function delete_news($id) 
    { 

     $query = $this->db->query("INSERT INTO deleted_news (news_id,title,image,news,type,user_id,post_of_day,publish_date) SELECT id,title, image,news,type,user_id,post_of_day,publish_date FROM add_news WHERE id = $id"); 


     $query = $this->db->query("Delete from add_news where id = $id"); 


     //$this->db->last_query(); exit; 
     //print_r($this->db->last_query()); 
     ///die; 
     if($query) 
     { 
      return 1; 
     } 
     else 
     { 
      return 0; 
     } 
    } 
2
<?php 
$this->load->database(); 
$this->db->query('SELECT * FROM table WHERE id=$id'); 
$query=$this->db->get(); 
foreach ($query->result as $row){ 
     $columnname1 = $row->columnname1 
     $columnname2 = $row->columnname2 
     $columnname3 = $row->columnname3 
     $columnname4 = $row->columnname4 
     $columnname5 = $row->columnname5 
     $columnname6 = $row->columnname6 
     $array = array($columnname1,$columnname2,$columnname3,$columnname4,$columnname5,$columnname6); 
     $this->load->model('your insert to database model'); 
     $this->insert_model_name->model_function($array); 

     $this->load->model('your delete from database model'); 
     $this->delete_model_name->model_function($id); 

} 
?> 

我只是将假设你知道怎么做了模型插入和删除。此代码还假定您使用ID来选择要删除的列。但是既然你没有给我们提供任何代码来看看,我猜这是你遇到困难的逻辑。

+0

良好的整体解决方案,限制读取和写入我可能会将行标记为已删除,并在服务器活动较少时每天一次将其移动一次,而不是始终执行,但取决于用例。 – Patrick

相关问题