java mysql导出txt,用Java将数据库从txt文件导入mysql

我试图导入我的数据库的数据到txt文件,之后我想再次导出它从这个文本文件,我写了这段代码private void importdata() {

try {

Class.forName("com.mysql.cj.jdbc.Driver");

con = DriverManager.getConnection("jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone = UTC", "root", "");

} catch (Exception ex) {

Tools.msg(ex.getMessage());

}

String csvFilePath = "D://t1.txt";

try {

String sql = "select ID,address,name from t1";

stmt = con.createStatement();

rs = stmt.executeQuery(sql);

FileOutputStream file = new FileOutputStream(csvFilePath);

OutputStreamWriter fileWriter = new OutputStreamWriter(file, StandardCharsets.UTF_8);

fileWriter.write("ID,Name,address");

while (rs.next()) {

int ID = rs.getInt("id");

String Name = rs.getString("name");

String address = rs.getString("address");

String line;

line = String.format("%s,%s,%s",

ID,address,Name);

fileWriter.write("\n");

fileWriter.write(line);

}

stmt.close();

fileWriter.close();

} catch (SQLException | IOException ex) {

Logger.getLogger(importandexport.class.getName()).log(Level.SEVERE, null, ex);

}

try {

Class.forName("com.mysql.cj.jdbc.Driver");

con = DriverManager.getConnection("jdbc:mysql://localhost/test?useUnicode=true characterEncoding=UTF-8&serverTimezone = UTC", "root", "");

String sql = "delete from t1";

stmt = con.createStatement();

stmt.executeUpdate(sql);

stmt.close();

} catch (Exception ex) {

Tools.msg(ex.getMessage());

}

}

private void export() {

try {

Class.forName("com.mysql.cj.jdbc.Driver");

con = DriverManager.getConnection("jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone = UTC", "root", "");

} catch (Exception ex) {

Tools.msg(ex.getMessage());

}

String sql = "LOAD DATA INFILE 'D://t1.txt' \n"

+ "INTO TABLE t1 \n"

+ "FIELDS TERMINATED BY ',' \n"

+ "LINES TERMINATED BY '\\n'\n"

+ " IGNORE 1 ROWS";

try {

stmt = con.createStatement();

stmt.executeUpdate(sql);

stmt.close();

} catch (Exception ex) {

Tools.msg(ex.getMessage());

}

}

这段代码对我来说很好,但是现在我想选择(ID,name,address)和加载(ID,name,address)而不是(ID,address,name),但是我做不到,那么我怎么做呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值