Ce qui suit fonctionnera via JDBC. Notez que pour utiliser LOAD DATA INFILE
vous avez besoin du privilège de superutilisateur. Ce dont vous n'avez pas besoin pour LOAD DATA LOCAL INFILE
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/foobar", "root", "password");
Statement stmt = con.createStatement();
String sql =
"load data infile 'c:/temp/some_data.txt' \n" +
" replace \n" +
" into table prd \n" +
" columns terminated by '\\t' \n" +
" ignore 1 lines";
stmt.execute(sql);
Si vous utilisez LOAD DATA INFILE
l'emplacement du fichier est basé sur le système de fichiers du serveur ! Si vous utilisez un fichier local, il est évidemment basé sur le système de fichiers du client.