[英]LOAD DATA INFILE error in php
我想將一個csv文件內容導入數據庫表中,我使用的是在phpmyadmin控制台中粘貼該代碼時可以完美工作的代碼:
LOAD DATA LOCAL INFILE '/Applications/MAMP/htdocs/testApp/trips.csv' INTO TABLE trips FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 1 ROWS (type,startDate,endDate,steps,coordinates,distance)
但是,在php文件中使用它時,出現錯誤:
<?php
$host = "localhost"; //Your database host server
$db = "dbTest"; //Your database name
$user = "root"; //Your database user
$pass = "root"; //Your password
$connection = mysqli_connect($host, $user, $pass);
//Check to see if we can connect to the server
if (!$connection) {
die("Database server connection failed.");
die(mysqli_error($db));
} else {
//Attempt to select the database
$dbconnect = mysqli_select_db($connection, $db);
//Check to see if we could select the database
if (!$dbconnect) {
die("Unable to connect to the specified database!");
} else {
$sql = "LOAD DATA LOCAL INFILE '/Applications/MAMP/htdocs/testApp/trips.csv'
INTO TABLE trips
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\\n'
IGNORE 1 ROWS (type,startDate,endDate,steps,coordinates,distance)"
;
$result = mysql_query($sql, $connection);
if (mysql_affected_rows() == 1) {
$message = "The trip was successfully inserted!";
} else {
$message = "The trip insert failed";
$message .= mysql_error();
}
echo $message;
}
}
?>
=> The trip insert failed
我很確定問題來自\\
或其他我無法定位的字符。 感謝您的幫助 。
您混合使用了MySQL和MySQLi插件-您嘗試與MySQLi連接,然后對MySQL執行查詢。 你不能那樣做。 選擇一個 API並持續使用它。
所以:
mysql_query($sql) ---> $connection->query($sql)
mysql_affected_rows() ---> $result->affected_rows()
mysql_error() ---> $connection->error
最終,這與LOAD DATA INFILE
無關,您應該使用基本的SELECT
進行嘗試! 並且我建議您閱讀所用功能的文檔 。
編輯:您在同一腳本中混合使用兩個插件MYSQL和MYSQLi,下面我使用mysqli插件轉儲了代碼的其余部分,因為您的上部使用了mysqli ...
注意 :你不能那樣做。 僅選擇任何一個API。
$result = mysqli_query($connection, $sql);
if (mysqli_affected_rows($connection) >= 1) {
$message = "The trip was successfully inserted!";
} else {
$message = "The trip insert failed";
$message .= mysqli_error($connection);
}
嘗試你trip.csv文件移動到datadir
-您可以使用此命令找到它: SELECT @ @datadir
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.