gpt4 book ai didi

java - 将数据从 arraylist 插入表

转载 作者:行者123 更新时间:2023-11-29 14:14:04 27 4
gpt4 key购买 nike

好吧,我是新手。我有两个 ArrayList,我想将数据从 arralylist 插入到表中。一个数组列表用于插入表参数,另一个数组列表用于插入表的值。

我曾尝试搜索是否有动态插入方式但找不到。

ArrayList<String> list= new ArrayList<>();
ArrayList<String> values= new ArrayList<>();
list.add("userid");
list.add("name");
list.add("email");

values.add(userID);
values.add(name);
values.add(email);

String sql = "insert into users (" + list + ") values( " + values + ")";

stmt.executeUpdate(sql);

我想将数据插入表中。但是像 userid 这样的参数应该在 ''(引号)中,name 应该在 ''(引号)中。但它们不会自动转换。还有其他方法可以完成相同的任务吗?有没有办法从 JSON 中获取数据并插入到本地表中?

最佳答案

您应该不将这样的值连接到 SQL 字符串中。使用 PreparedStatement 代替:

String sql = "insert into users (userid, name, email) values (?,?,?)";
PreparedStatement pstmt = connection.prepareStatement(sql);

插入多行的首选方法是使用批处理

for (int i=0; i < values.size(); i++) {
pstmt.setString(i+1, values.get(i);
}
pstmt.executeUpdate();

将列名 userid 的值作为字符串传递似乎从一开始就是错误的。通常这些存储为整数。

关于java - 将数据从 arraylist 插入表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55756925/

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