gpt4 book ai didi

java - 使用 ArrayList 在 JDBC 中插入,给出的行不按顺序排列

转载 作者:行者123 更新时间:2023-12-01 21:59:19 26 4
gpt4 key购买 nike

我使用以下代码从 ArrayList 获取值并将其添加到数据库中。我正在使用 PreparedStatement,我的数据库是 Oracle。

ps = conn.prepareStatement("insert into Employee values(?,?,?,?,?)");
for (Employee e : elist) {
ps.setInt(1, e.getEmployeeId());
ps.setString(2, e.getEmployeeName());
ps.setString(3, e.getGender());
ps.setString(4, e.getDesignation());
ps.setString(5, e.getEmail());
added += ps.executeUpdate();
}

elist 是员工的 ArrayList

这里是准备ArrayList的代码:

Employee e1 = new Employee(1,"I","M","AS","abcd@gmail.com");
Employee e2 = new Employee(2,"A","M","RS","efgh@yahoo.in");
Employee e3 = new Employee(3,"S","F","SD","efgh@gmail.com");
Employee e4 = new Employee(4,"SS","F","SD","abcd@yahoo.in");
ArrayList<Employee> elist = new ArrayList<Employee>();
elist.add(e1);
elist.add(e2);
elist.add(e3);
elist.add(e4);

插入后我已经上传了 Employee 表:

enter image description here

正如您所看到的,行不是按照主键即 Employee_Id 值的顺序插入的。我的意思是,当插入数据时,行通常预计按顺序 1,2,3 ,4.但这里的情况并非如此。

我可能错过了一些非常基本的点,但我刚刚开始了解 JDBC 的内容。

最佳答案

SQL 表是未排序的集合。它们没有内在的秩序。如果您想检索按员工 ID 排序的值,则需要在 order by 子句中显式声明:

SELECT * FROM employee ORDER BY employee_id ASC

关于java - 使用 ArrayList 在 JDBC 中插入,给出的行不按顺序排列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33847209/

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