使用PHP/MySQL 匯入CSV 資料
將CSV 檔案中的資料匯入MySQL 資料庫是一項常見任務,可以透過多種方法來實現。一種流行的方法是使用 PHP 處理資料並將其插入資料庫。
文字顯示為 0
在提供的程式碼中,文字資料的問題在資料庫中顯示為 0 可能源自於使用 $import 變數的 mysql_query 語句。確保 $data 數組中的 $data[0] 元素確實包含應插入“text”列中的文字值。仔細檢查 CSV 檔案的格式是否具有正確的值和列分隔符號。
引號內的資料
引號內的資料通常是結果欄位周圍有雙引號字元的 CSV 檔案。若要處理此問題,請在 LOAD DATA INFILE 查詢中聲明 FIELDS TERMINATED BY 和 OPTIONALLY ENCLOSED BY 子句,以指定欄位分隔符號和封閉字元。
忽略 CSV 的第一行
要跳過 CSV 檔案的第一行(例如標題),可以修改 LINES TERMINATED BY 子句來實現此目的。例如,LINES TERMINATED BY 'n' ESCAPED BY '\n' IGNORE 1 LINES 將跳過 CSV 檔案的第一行。
資料格式轉換
資料格式通常在匯入過程中保留。但是,某些資料類型可能會出現精度問題。例如,如果 CSV 檔案包含浮點數,並且目標列定義為整數類型,則它們可能會在資料庫中轉換為整數。為了避免這種情況,請確保資料庫中的列資料類型與 CSV 檔案中的預期資料類型相符。
超過最大執行時間
錯誤「致命錯誤」 : 超出最大執行時間30 秒」表示PHP 腳本超出了PHP 配置規定的最大執行時間限制。要超出最大執行時間30 秒」表示PHP 腳本超出了PHP 組態規定的最大執行時間限制。解決此問題,可以透過修改PHP 設定檔(例如php.ini)中的max_execution_time 指令來增加執行時間限制。 MySQL LOAD DATA INFILE 方法,該方法可以更快地執行導入,而不會涉及 PHP 腳本執行時間限制。
以上是如何使用PHP有效地將CSV資料匯入MySQL,解決資料類型不符、執行時間限制等常見問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!