gpt4 book ai didi

java - 在mysql数据库中导入csv

转载 作者:行者123 更新时间:2023-11-29 22:25:25 26 4
gpt4 key购买 nike

我在 netbeans 中使用 Java 开发了一个 GUI。我构建了一个按钮,用于使用以下代码在数据库中自动导入 csv 文件:

JFileChooser fc=new JFileChooser(); 
fc.showOpenDialog(this);
File f=fc.getSelectedFile();
String path=f.getAbsolutePath();
try
{
FileInputStream fin=new FileInputStream(f);
int len=(int)f.length();
java.sql.PreparedStatement ps1=con.prepareStatement("LOAD DATA LOCAL INFILE 'C:\\Users\\nabil.khedhri.stg\\Desktop\\TT.csv' INTO TABLE essai FIELDS TERMINATED BY ';' LINES TERMINATED BY '\\\\r\\\\n' ");
ps1.setBinaryStream(1, fin, len);
int status =ps1.executeUpdate();
if(status > 0)
{
j1.setText("Successfully inserted in DB");
}
else
{
j2.setText("Image not inserted!");
}
}
catch(Exception e)
{
System.out.println(e);
}

但没有结果。

最佳答案

有任何异常消息吗?检查守护进程 mysqld 是否在没有选项“--local-infile=0”的情况下运行。检查这个“http://dev.mysql.com/doc/refman/5.5/en/load-data-local.html

另外,我真的会再次考虑这种插入记录的方式。似乎用户可以加载任何文件,从安全角度来看这可能非常危险。请阅读 mysql 手册了解这一点。我建议通过一些库逐行读取 csv 文件,验证它并加载到表中。当然,如果这是开发人员的工具,并且仅适用于少数开发人员进行快速修复或加载,这样的方式可能还可以。

关于java - 在mysql数据库中导入csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30306130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com