如何在codeigniter中选择存储过程函数generateID



我想制作一个生成的ID来使用函数存储过程,但我对如何使用CodeIgniter显示generaete ID感到困惑。

存储过程函数"PenjualanGenIdFunc"中的Generate ID:

BEGIN
DECLARE kodebaru CHAR(15);
DECLARE urut INT;
SET urut = IF(nomer IS NULL, 1, nomer + 1);
SET kodebaru = CONCAT("PJL", LPAD(urut, 12, 0));
RETURN kodebaru;
END

我用代码调用模型:

function getKodePenjualan(){
    $query = $this->db->query("select PenjualanGenIdFunc('kodebaru') AS kodepenjualan");
    return $query->row_array();
}

在控制器中:

$data['kodepenjualan'] = $this->mwebsite->getKodePenjualan();

并且在视图中:

<?php echo $kodepenjualan['kodepenjualan'];?>

从上面的代码中,生成的ID已经显示为代码:PJL000000000001,但我什么时候会再次购买。代码将不是PJL000000000002、PJL000000000003等

如何为generate-id调用存储过程函数??请帮助我

首先,如果你想调用SP,你需要像这样调用

$this->db->query("调用PenjualanGenIdFunc()");

在你的SP中,你必须有类似于的东西

创建程序My_Insert开始插入我的表格(第1行)值(@col1)

SELECT @new_identity = SCOPE_IDENTITY()
SELECT @new_identity AS id
RETURN

结束

但是如果你想使用CI获得最后一个id插入,你可以使用

$this->db->insert('table',array('value1'=>$value1));

返回$this->db->insert_id();

最新更新