mysql语法错误:mysql不允许处理某些字符

时间:2013-08-06 13:38:02

标签: mysql-error-1064 mysql-real-escape-string

距离文件读取并将数据写入数据库中的表只需一步。除了在我的数据库中写入表时,一切正常。这是我得到的错误消息:

无法加载。您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,以便在“不跟随您”附近使用正确的语法,以便我可以在第1行跟踪您“”)')'

这是我的代码:

$sql = mysql_connect("localhost", "root","root");
        mysql_select_db("Tweet_Corpora");
        if(!$sql){
            die("could not connect: " . mysql_error());
        }
        $file = fopen("/Applications/MAMP/bin/mamp/uploads/corpus/set_2.txt","r") or exit("Unable to open file!");
        while(!feof($file)){
            $string = fgets($file);
            $arr = (explode("\t", $string));
            $test = "INSERT INTO Display (tweet_id, raw_tweet) VALUES ('mysql_real_escape_string($arr[0])','mysql_real_escape_string($arr[1])')";
            $result = mysql_query($test);
            if(!$result){
                die("could not load. " . mysql_error());
            }
        }

我该怎么办?请帮忙。提前谢谢。

1 个答案:

答案 0 :(得分:-1)

这是有点扭曲的工作代码:

    $sql = mysql_connect("localhost", "root","root");
    mysql_select_db("Tweet_Corpora");
    if(!$sql){
        die("could not connect: " . mysql_error());
    }
    $file = fopen("/Applications/MAMP/bin/mamp/uploads/corpus/set_2.txt","r") or exit("Unable to open file!");
    while(!feof($file)){
        $string = fgets($file);
        $arr = (explode("\t", $string));
        $idd= mysql_real_escape_string($arr[0]);
        $tweet=mysql_real_escape_string($arr[1]);
        $test = "INSERT INTO Display (tweet_id, raw_tweet) VALUES ('".$idd."','".$tweet."')";
        $result = mysql_query($test);
        if(!$result){
            die("could not load. " . mysql_error());
        }
    }