所以我正在寻找一种方法,使用java桌面应用程序将.txt文件中的数据导入到我的mysql表中,我编写了这些代码行,但是当我运行程序时,我可以看到Jform和第一个按钮正常工作,但是当我按下第二个按钮时,没有任何反应。我应该改变什么?
private void ouvrirActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
JFileChooser chooser = new JFileChooser();
chooser.showOpenDialog(null);
File f=chooser.getSelectedFile();
filename=f.getAbsolutePath();
chemin.setText(filename);
}
private void chargerActionPerformed(java.awt.event.ActionEvent evt) {
String tablename = "tmp";
try{
stm=maConnexion.ObtenirConnexion().createStatement();
stm.executeUpdate("LOAD DATA LOCAL INFILE \"" + filename + "\" INTO TABLE " + tablename);
JOptionPane.showMessageDialog(null,"Fichier trace chargé avec succés");
}
catch(SQLException ex){
System.err.println(ex);
}
答案 0 :(得分:0)
为了澄清您的情况,您可以在mysql控制台中运行该命令。如果成功,那么您可以在代码中尝试。
首先尝试,
LOAD DATA LOCAL INFILE '/tmp/foo.txt'
INTO TABLE tmp;
第二次尝试,
LOAD DATA LOCAL INFILE '/tmp/foo.txt'
INTO TABLE tmp COLUMNS TERMINATED BY '\t';
第三次尝试,
LOAD DATA LOCAL INFILE '/tmp/foo.txt' INTO TABLE tmp
FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n';
第四次尝试,
LOAD DATA LOCAL
INFILE '/tmp/mydata.txt' INTO TABLE tmp
COLUMNS TERMINATED BY '\t' ## This should be your delimiter
OPTIONALLY ENCLOSED BY '"'; ## ...and if text is enclosed, specify here
从完美运行的那些开始,您可以实现您的代码。
更多信息, 您可以浏览MySQL manual