2011-02-03 40 views
3

我有下面的格式有名稱的文本文件,計數多少行LOAD DATA INFILE已插入

firstname:lastname 

這裏是我運行查詢,

$this->db->query("LOAD DATA INFILE 'names.txt' INTO TABLE names FIELDS TERMINATED BY ':' (firstname, lastname)"); 

我怎樣才能統計插入了多少行?

+3

試試這個函數mysql_affected_rows() – 2011-02-03 09:25:57

回答

2
manual

當LOAD DATA INFILE語句 結束時,會返回以下格式的信息 串

Records: 1 Deleted: 0 Skipped: 0 Warnings: 0 

如果您使用的是C API,你可以 通過調用mysql_info()函數獲取關於 聲明的信息。

所以儘量使用mysql_info()

,如:

$info_str = mysql_info($$link); 
    if (ereg("Records: ([0-9]*)", $info_str, $count) == false) { 
     ereg("Rows matched: ([0-9]*)", $info_str, $count); 
    } 
0

您可以下面的查詢運行:

SELECT ROW_COUNT() 

它會回答你的問題。

0

@rkosegi - ROW_COUNT()僅適用於SELECT語句中的SQL_CALC_FOUND_ROWS。