簡體   English   中英

如何在批量插入查詢mysql之后從表中獲取總插入行數

[英]How to get total inserted row count from a table after bulk insert query mysql

我正在使用批量插入查詢使用PHP插入到mysql表中。 在這里,我想知道來自此批量插入查詢的總插入記錄。 完成批量插入后,我使用下面的代碼來獲得總插入數。

//here bulk insert complete.Next i am calling this
$row_cnt = mysql_query("SELECT ROW_COUNT()");
echo "Affected:rows:".$inbound_cnt = mysql_num_rows($row_cnt);

在這里,我受到了影響:行:1。我還想從此批量插入中獲取最后一個插入ID。

echo "current_id:". $current_id = mysql_insert_id();
I am getting '0' ;

如何找到總插入數? 任何幫助將不勝感激。

// my insert query
 $data4 = "";
    $inbound_csv_cnt = count($csv_array);
    for($i=0;$i<$inbound_csv_cnt;$i++)
    {
   $data4.="('".$csv_array[$i][0]."','".$csv_array[$i][1]."','".$csv_array[$i][2]."'),";
    }
    $data4 = substr($data4,0,-1);
    $ins_sql = "INSERT INTO whv_inbound_response(`whv_id`, `rqv_id`, `whv_type`) values $data4" ;
    $res = mysql_query($ins_sql);

在插入之前,您可以獲得total records

 SELECT COUNT(id) FROM table_name; // save output in $old

然后插入您的數據並再次將總記錄計為$new

現在發現差異

$total_inserted_record = $new-$old;

在使用循環時,您還可以設置計數器來計算行數,甚至在插入之前。 另外,要獲取最后一個插入ID,可以使用mysqli程序

$last_id = mysqli_insert_id($conn_string); 

您已經在$ inbound_csv_cnt中插入了多個記錄

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM