Codeigniter,mysql,select_max并在插入另一条记录之前加1 [英] Codeigniter, mysql, select_max and add 1 before inserting another record
本文介绍了Codeigniter,mysql,select_max并在插入另一条记录之前加1的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
将新记录插入数据库表时,我需要获取一个名为el_order的列的现有先前值,添加+1,然后使用该新的el_order + 1将具有该值的新记录插入该列中
When I insert a new record into a database table, I need to take an existing previous value of a column called el_order, add +1, and use that new el_order+1 to insert the new record with that value in the column.
我的英语不好,所以我会这样解释:
My english isn't good, so I will explain like this:
表
ID name el_order
1 1 1
21 bla 2
2 2 3
--NEW-- --NEW-- 3+1 (NEW)
我添加了一条新记录,并需要在el_order列中以3 + 1插入它...
I add a new record, and need to insert it with 3+1 in it's el_order column...
我已经尝试过了,但是没有运气:
I have tried this, but no luck:
$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);
这篇关于Codeigniter,mysql,select_max并在插入另一条记录之前加1的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文