Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java CSV转换成MySQL数据库_Java_Mysql - Fatal编程技术网

Java CSV转换成MySQL数据库

Java CSV转换成MySQL数据库,java,mysql,Java,Mysql,我有以下片段: String insertSql = "LOAD DATA INFILE 'C:/thomsonReuters/compressed/premium-world-check-day.csv'" + " INTO TABLE thomsenreuters.worldcheck " + " FIELDS TERMINATED BY '\t' " + "

我有以下片段:

    String insertSql =  "LOAD DATA INFILE 'C:/thomsonReuters/compressed/premium-world-check-day.csv'"
                    + " INTO TABLE thomsenreuters.worldcheck " 
                    + " FIELDS TERMINATED BY '\t' " 
                    + " ENCLOSED BY '\"' " 
                    + " LINES TERMINATED BY '\r\n' " 
                    + " IGNORE 1 ROWS;";
此文件共有4567行。字段以制表符结尾,并用双引号括起来。我尝试通过准备好的更新stmt插入csv文件。但是Java只将前4行插入MySQL。我犯了什么错

谢谢你的帮助

编辑

完整类别代码:


提供前5行数据当您在mysql命令行上执行相同的查询时,它是否工作?如果没有,,然后我认为您的CSV文件中有一些无效字符。为了改进程序错误报告,如果引发任何异常,您应该打印整个SQLException链,以及连接中的SQLWarning完整列表。如果我在mysql中执行相同的查询,则会得到错误代码:1261第4行不包含所有列的数据。那么我必须改变什么呢?每一行都有一个条目,但不是所有列都有。我知道了。错误是我必须将由“\”括起的内容更改为由“”括起的内容。
Connection con = null;
    PreparedStatement stmt = null;

    String truncateTable = "Truncate table thomsenreuters.worldcheck;";

    String insertSql =  "LOAD DATA INFILE 'C:/thomsonReuters/compressed/premium-world-check-day.csv'"
                    + " INTO TABLE thomsenreuters.worldcheck " 
                    + " FIELDS TERMINATED BY '\t' " 
                    + " ENCLOSED BY '\"' " 
                    + " LINES TERMINATED BY '\r\n' " 
                    + " IGNORE 1 ROWS;";    

    try {
        Class.forName("com.mysql.jdbc.Driver");
    } catch (ClassNotFoundException e) {            
        e.printStackTrace();
    }

    System.out.println("Driver was found");

    try {
        con = DriverManager.getConnection("jdbc:mysql://localhost:3306/thomsenreuters","XXXXXXX","XXXXXXX");
    } catch (SQLException e) {
        e.printStackTrace();
    }
    System.out.println("Connection to Database");

    System.out.println("Start insert...");
    try {
        con.setAutoCommit(false);
        stmt = con.prepareStatement(truncateTable);
        stmt = con.prepareStatement(insertSql);         
        int total  = stmt.executeUpdate();
        con.commit();
        con.setAutoCommit(true);

        System.out.println("Total Rows insert " + total);



    } catch (SQLException e) {
        e.printStackTrace();
    }
    finally{
        if(stmt != null)
        {
            try {
                stmt.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if(con != null)
        {
            try {
                con.close();
            } catch (SQLException e) {                  
                e.printStackTrace();
            }
        }
    }


}