LOAD DATA INFILE MYSQL Error

user2008973

I'd like to load a file in a mysql table thrugh java program using load data infile command but I am receiving MySQL Syntax Error:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

The sql statement is the following:

 String sql =    "LOAD DATA  LOCAL INFILE '/Dataset/"+listOfFiles[i].getName()+".txt'" +
                            "    INTO TABLE data " +
                            "    CHARACTER SET utf8 " +
                            "    FIELDS " +
                            "        TERMINATED BY '|' " +
                            "    LINES " +
                            "    STARTING BY 'status' " +
                            "        TERMINATED BY '\n' " +
                            "    (@col_type, @col_origin, @col_text, @col_url, @col_id, @col_time, @col_retcount)"+
                            "     set userid = '1234' "
                            "      , original = @col_origin "+
                            "      , datatext = @col_text "+
                            "      , url = @col_url "+
                            "      , id = @col_id "+
                            "      , retcount = @col_retcount "+                                
                            "      , date = str_to_date(@col_time, '%m/%d/%Y') "+
                            "      , isanswer = CASE WHEN @col_origin LIKE '% abcd %' THEN 1 ELSE 0 END ";

My problem is that I cannot spot the error. Could anyone help me?

Chris Forrence

You need to have two backslashes (\) in your Java String near

"       Terminated By '\\n' " +
                        ^ new

Your String, then, would look like this:

String sql = "LOAD DATA "
        + " LOCAL INFILE '/Dataset/"+listOfFiles[i].getName()+".txt'"
        + "    INTO TABLE data "
        + "    CHARACTER SET utf8 "
        + "    FIELDS "
        + "        TERMINATED BY '|' "
        + "    LINES "
        + "    STARTING BY 'status' "
        + "        TERMINATED BY '\\n' "
        + "    (@col_type, @col_origin, @col_text, @col_url, @col_id, @col_time, @col_retcount)"
        + "     set userid = '1234' "
        + "      , original = @col_origin "
        + "      , datatext = @col_text "
        + "      , url = @col_url "
        + "      , id = @col_id "
        + "      , retcount = @col_retcount "
        + "      , date = str_to_date(@col_time, '%m/%d/%Y') "
        + "      , isanswer = CASE WHEN @col_origin LIKE '% abcd %' THEN 1 ELSE 0 END ";

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

MySQL/Python LOAD DATA LOCAL INFILE error

From Dev

MySQL LOAD DATA INFILE error 13 on a Pi

From Dev

MySQL Load Data Infile

From Dev

MySQL Load Data Infile

From Dev

MySQL Load Data Infile - Nulls causing error 1265: Data Truncated

From Dev

mysql LOAD DATA INFILE not working

From Dev

load data infile syntax in mysql

From Dev

Python2.7 MySQL Connector Error on LOAD DATA LOCAL INFILE

From Dev

LOAD DATA INFILE error 1064

From Dev

Loading data into mysql LOAD DATA INFILE difficulty

From Dev

MySQL LOAD DATA INFILE limits my import?

From Dev

mysql LOAD DATA INFILE NA to NULL transformation

From Dev

mysql LOAD DATA INFILE without FIELDS TERMINATED BY

From Dev

Bash Script for Load Data Infile MySQL

From Dev

Python/MySQL - LOAD DATA LOCAL INFILE

From Dev

MySQL LOAD DATA LOCAL INFILE to a remote server

From Dev

Equivalent of SET with LOAD DATA INFILE for MySQL 4.1?

From Dev

MySQL LOAD DATA INFILE store line number

From Dev

Python/MySQL - LOAD DATA LOCAL INFILE

From Dev

mysql LOAD DATA INFILE without FIELDS TERMINATED BY

From Dev

mysql LOAD DATA LOCAL INFILE not finding file

From Dev

LOAD DATA INFILE - FIELDS TERMINATED error

From Dev

LOAD DATA LOCAL INFILE syntax error

From Dev

LOAD DATA INFILE - FIELDS TERMINATED error

From Dev

Error When Using LOAD DATA LOCAL INFILE

From Dev

Error 1062 while using load data infile

From Dev

LOAD DATA LOCAL INFILE - results error

From Dev

Error in Powershell running LOAD DATA LOCAL INFILE

From Dev

load data infile error: MySQL throws a syntax error when specifying columns