使用php将txt文件加载到mysql数据库中

时间:2015-10-18 08:24:26

标签: php mysql database

我正在尝试从文件填写数据库,但是我收到以下错误:无法加载。用户访问被拒绝'用户名' @' localhost' (使用密码:是)。 我正在使用免费的虚拟主机服务。我该如何解决这个问题?

<?php
require 'connect.inc.php';
$string = file_get_contents("testdata.txt"); 
$myFile = "myFile.txt";
$fileContents = file_get_contents('testdata.txt');
fwrite($fh, $string);
fclose($fh);
mysql_query('TRUNCATE TABLE table1;'); //clear the existing table
$result = mysql_query("LOAD DATA INFILE 'myFile.txt'" .
                      " INTO TABLE table1 FIELDS TERMINATED BY '|'");
if (!$result) {
    die("Could not load. " . mysql_error());
}
echo 'OK8';
$query = "SELECT * FROM table1"; 
if ($query_run = mysql_query($query)){
    echo 'Query success.';
    if (mysql_num_rows($query_run)==NULL){
        echo 'No results found.';
    } else {
    while ($query_row = mysql_fetch_assoc($query_run)) {
        echo json_encode($query_row);
    }
    }
}else{
    echo mysql_error();
}
?>

1 个答案:

答案 0 :(得分:0)

用户'user'@'localhost'的访问被拒绝错误可能意味着:

  1. 'user'@'localhost'没有FILE权限。你应该授予这个特权。或者您应该检查您使用的配置是否正常(用户是否存在且具有相应数据库的所有必要权限)

  2. 您尝试加载的文件在运行mysql服务器的计算机上不存在

  3. 如果要从机器加载文件,则应使用 而是加载数据本地信息。

    1. 检查您尝试加载的文件是否可读,请尝试使用chmod 755获取该文件以及“myFile.txt”的所有父目录。