首页 文章

如何在uuid codeigniter中检索最后一个插入ID

提问于
浏览
0

我在codeigniter中检索最后一个插入ID时遇到问题 . 当我尝试调试像var_dump();输出只发送int(0)

我使用uuid作为主键的id . 这是代码:

$this->db->set('id_customer','uuid_short()',FALSE);
    $query = $this->db->insert('customer',$data);
    $id = $this->db->insert_id();
    echo var_dump($id);

    if($query)
    {
        $array = array(
            'kode_trans' => 'uuid()',
            'trans_date' => 'NOW()'
            );

        $this->db->set('id_customer','$id');
        $this->db->set($array,'',FALSE);
        $this->db->insert('transaction_header');

        return $id;
    }else{
        return FALSE;
    }

我在ci的新手 . 我的代码有问题吗?

1 回答

  • 0

    "insert_id"函数使用PHP的mysql_insert_id函数,该函数返回“上次查询成功时为AUTO_INCREMENT列生成的ID,如果前一个查询未生成AUTO_INCREMENT值,则返回0”

    你可以这样试试;

    $id = uuid_short();
    $data['id_customer'] = $id;
    
    $query = $this->db->insert('customer', $data);
    if ( $query )
    {
        $array = array(
        'kode_trans' => 'uuid()',
        'trans_date' => 'NOW()'
    );
    
    $query = $this->db->insert('transaction_header', $array);
    return $id; 
    }
    else
    {
        return false;
    }
    

相关问题