[php] CodeIgniter activerecord, 마지막 삽입 ID를 검색 하시겠습니까?

CodeIgniter에서 새 레코드의 마지막 삽입 ID를 얻는 옵션이 있습니까?

$last_id = $this->db->insert('tablename',
    array('firstcolumn' => 'value',
    'secondcolumn' => 'value')
);

테이블이 id (자동 증가) firstcolumn 및 secondcolumn 필드로 구성된 것을 고려하십시오.

이런 식으로 다음 코드에서 삽입 ID를 사용할 수 있습니다.



답변

수치심 …

나는 보았다 사용자 가이드 및 제 기능입니다$this->db->insert_id();

이것은 활성 레코드 삽입에서도 작동합니다 …

편집 : 나는 링크를 업데이트


답변

마지막 삽입 ID는 활성 레코드에서이 방법을 사용하여 자동 증가 ID를 삽입 할 수 있음을 의미합니다.

$this->db->insert_id() 
// it can be return insert id it is 
// similar to the mysql_insert_id in core PHP

이 링크를 참조하면 더 많은 것을 찾을 수 있습니다.

쿼리 실행 정보


답변

특정 테이블의 경우 $ this-> db-> insert_id ()를 사용할 수 없습니다. 마지막 삽입조차도 오래 전에 이런 식으로 가져올 수 있습니다. 잘못되었을 수 있습니다. 그러나 나를 위해 잘 작동

     $this->db->select_max('{primary key}');
     $result= $this->db->get('{table}')->row_array();
     echo $result['{primary key}'];


답변

ID 및 쿼리 요청에 도움이되는 세부 정보 목록은 다음과 같습니다.

마지막으로 삽입 한 ID를 가져 오는 경우 : 테이블에서 마지막 레코드를 가져옵니다.

$this->db->insert_id(); 

SQL 쿼리를 가져 오는 중 모달 요청 후이를 추가

$this->db->last_query()


답변

$this->db->insert_id();

원하는 질문으로 시도하십시오.


답변

삽입 쿼리 후이 명령 $this->db->insert_id();을 사용 하여 마지막으로 삽입 된 ID를 반환하십시오.

예를 들면 다음과 같습니다.

$this->db->insert('Your_tablename', $your_data);

$last_id =  $this->db->insert_id();

echo $last_id // assume that the last id from the table is 1, after the insert query this value will be 2.


답변

이 시도.

public function insert_data_function($your_data)
{
    $this->db->insert("your_table",$your_data);
    $last_id = $this->db->insert_id();
    return $last_id;
}