如何在Codeigniter中

时间:2016-12-23 06:22:38

标签: codeigniter sql-delete

我的数据库表如下所示,表名为add_family

id    ,   Head_id   ,Head_Name   , CustomerName    customer_id                   
1     ,   2589      ,   Mitesh   ,  anuj^anil   ,  456^259  
2     ,    2590     ,  vijay     ,  amit^ajay   ,  852^454  

如果我想删除任何客户名称及其ID,那么如何在CodeIgniter中删除它?例如,如果我只想删除CustomerName Anuj及其customer_id 456 Head_id为2586,

如何删除它?

2 个答案:

答案 0 :(得分:-1)

您应该使用查询构建器类和加载数据库库。

以下是官方docs的一个例子:

$data = array(
        'CustomerName' => 'anil',//or NULL if you want to 'delete it'
        'customer_id' => '259'//or NULL if you want to 'delete it'
);

$this->db->where('Head_id', 2586);
$this->db->update('add_family', $data);

如果您想动态执行此操作,并且您始终希望在^之后使用该部件,例如php explode这样的功能:

$this->db->select('CustomerName, customer_id');
$this->db->where('Head_id', 2586); 
$query = $this->db->get('add_family');
$result = $query->row_array(); 

$data = array(
            'CustomerName' => explode('^', $result['CustomerName'])[1],
            'customer_id' => explode('^', $result['customer_id'])[1]
    );

$this->db->where('Head_id', 2586);
$this->db->update('add_family', $data);

请注意,如果表的ID是主键,则不应更新表。

答案 1 :(得分:-3)

尝试这样的事情。想法是从两个字段的数据库中获取价值并用空字符串替换客户名称

$query = $this->db->get_where('add_family',array('id'=>1));
$name = str_replace("anuj","", $query['CustomerName']);
$id = str_replace(456, "", $query['customer_id ']);

$data = array(
        'CustomerName' => $name,//or NULL
        'customer_id' => $id//or NULL
);

$this->db->where('Head_id', 2586);
$this->db->update('add_family', $data);