web-dev-qa-db-ja.com

CodeIgniter activerecord、最後の挿入IDを取得しますか?

CodeIgniterの新しいレコードの最後の挿入IDを取得するオプションはありますか?

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

フィールドid(autoincrement)firstcolumnおよびsecondcolumnのテーブル構成を検討します。

この方法では、次のコードで挿入IDを使用できます。

150
Dennis Decoene

恥ずかしい...

ユーザーガイド を見て、最初の関数は$this->db->insert_id();です

これはactiverecord挿入でも機能します...

編集:リンクを更新しました

274
Dennis Decoene

最後の挿入IDは、アクティブレコードでこのメソッドを使用することにより、自動インクリメントIDを挿入できることを意味します。

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

このリンクを参照すると、さらに多くのものが見つかります。

クエリの実行からの情報

37
Raja Ram T

特定のテーブルでは、$ this-> db-> insert_id()を使用できません。ずっと前に最後の挿入が行われたとしても、このように取得できます。間違っている可能性があります。しかし、私のためにうまく働いています

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

IDとクエリのリクエストに役立つ詳細のリストは

最後に挿入されたIDを取得する場合:これは、テーブルから最後のレコードを取得します

$this->db->insert_id(); 

モーダルリクエストの後にSQLクエリをフェッチすると、これが追加されます

$this->db->last_query()
8
Madhur

$this->db->insert_id();

希望する質問としてこれを試してください。

6
Akash Tyagi

これを試して。

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

挿入クエリの後、このコマンド$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.
4
$this->db->insert_id();

データベースの挿入を実行するときに挿入ID番号を返します

クエリヘルパーメソッド codeigniter-3の場合

3
Shaiful Islam
$this->db->insert_id()  

//これを試してください

2
Girish Ninama
if($this->db->insert('Your_tablename', $your_data)) {
    return $this->db->insert_id();
}
return false 
1
Nakendra Pun