Java 在Eclipse中使用文件进行批量更新
我需要在Eclipse中使用批量更新来更新表。查询如下:Java 在Eclipse中使用文件进行批量更新,java,mysql,eclipse,Java,Mysql,Eclipse,我需要在Eclipse中使用批量更新来更新表。查询如下: BULK INSERT test_db.temp_accounts FROM 'test_file.txt' WITH (FIELDTERMINATOR = ' ', ROWTERMINATOR = '\n') 但问题是,当我使用JDBC连接连接到数据库后在Eclipse中使用它时,我得到的是一个语法错误 代码片段如下所示: Connection c = DriverManager.getConnection(CONNECTION,p)
BULK INSERT test_db.temp_accounts FROM 'test_file.txt' WITH (FIELDTERMINATOR = ' ', ROWTERMINATOR = '\n')
但问题是,当我使用JDBC连接连接到数据库后在Eclipse中使用它时,我得到的是一个语法错误
代码片段如下所示:
Connection c = DriverManager.getConnection(CONNECTION,p);
PreparedStatement stmt = c.prepareStatement("BULK INSERT test_db.temp_accounts FROM 'test_file.txt' WITH (FIELDTERMINATOR = ' ', ROWTERMINATOR = '\n')");
try
{
}catch (Exception e) {
e.printStackTrace();
}finally {
stmt.close();
c.close();
}
文件“test_file.txt”与java类文件位于同一目录中。请有人在这里指出正确的语法,谢谢。您是否尝试使用文件的绝对路径,例如,如果您使用的是Linux机器,它可能是这样的
/home/user/workspace/project\u name/src/java/test\u file.txt
您可以通过右键单击文件并选择选项“Properties”来找到Eclipse中任何文件的实际路径名,该选项将显示该文件的绝对路径
此外,您是否尝试过将文件名改为test_file.sql而不是以.txt结尾。错误日志显示:“您的sql语法有错误;请查看与MySQL服务器版本对应的手册,以了解正确的语法,以便在第1行使用“test_file.txt”和(fieldterminator)”中的“BULK INSERT into test_db.temp_帐户”。我使用的是服务器版本SQL 5.1.69。绝对路径也不起作用。您是否尝试过使用PreparedStatement#addBatch()和PreparedStatement#executeBatch(),如下线程所示: