Php Codeigniter,mysql,在插入另一条记录之前选择_max并添加1
在将新记录插入数据库表时,我需要获取一个名为el_order的列的现有上一个值,并添加+1,然后使用该新el_order+1在该列中插入具有该值的新记录 我不能使用autoincrement,因为我需要对该列执行一些操作(重新排序、移动等),并且必须将其用作整数。 我的英语不好,所以我会这样解释: 桌子 我添加了一条新记录,需要在它的el_order列中插入3+1 我尝试过这个,但没有成功:Php Codeigniter,mysql,在插入另一条记录之前选择_max并添加1,php,mysql,codeigniter,Php,Mysql,Codeigniter,在将新记录插入数据库表时,我需要获取一个名为el_order的列的现有上一个值,并添加+1,然后使用该新el_order+1在该列中插入具有该值的新记录 我不能使用autoincrement,因为我需要对该列执行一些操作(重新排序、移动等),并且必须将其用作整数。 我的英语不好,所以我会这样解释: 桌子 我添加了一条新记录,需要在它的el_order列中插入3+1 我尝试过这个,但没有成功: $this->db->select_max('el_order'); $res = $thi
$this->db->select_max('el_order');
$res = $this->db->get('elem_diccio');
$eldi_key = url_title($this->input->post('id'), 'underscore', TRUE);
$el_order = $res+1;
$datos = array(
'ID' => $id,
'el_order' => $el_order,
'name' => $this->input->post('name'),
);
$this->db->insert('elem_diccio', $datos);
谢谢。就像这样
$this->db->select_max('el_order');
$res = $this->db->get('elem_diccio')->row()->el_order;
$eldi_key = url_title($this->input->post('id'), 'underscore', TRUE);
$el_order = $res+1;
$datos = array(
'ID' => $id,
'el_order' => $el_order,
'name' => $this->input->post('name'),
);
$this->db->insert('elem_diccio', $datos);
请查看以上两个链接以获取您寻求的答案。谢谢
是一个CI\u DB\u mysqli\u结果对象
。要获得该列,您需要
$this->db->select_max('el_order');
$res = $this->db->get('elem_diccio')->row();
$el_order = $res->el_order+1;
$datos = array(
'ID' => $id,
'el_order' => $el_order,
'name' => $this->input->post('name'),
);
看起来很像一个自动递增的主键…我编辑了我的问题:我不能使用自动递增,因为我需要对该列执行一些操作(重新排序、移动等),并且必须将其用作整数。粘贴答案比链接更好如果是这样的话,我还必须复制解释部分:)
$this->db->select_max('el_order');
$res = $this->db->get('elem_diccio')->row();
$el_order = $res->el_order+1;
$datos = array(
'ID' => $id,
'el_order' => $el_order,
'name' => $this->input->post('name'),
);