gpt4 book ai didi

java - 将值插入 mysql 表所需的帮助

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

我已经使用 mysql 创建了一个表:

CREATE TABLE JobCard (
ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
JobNo Long,
RegNo VARCHAR(20),
Service_Type VARCHAR(20),
Customer_Complaints VARCHAR(100)
);

在命令中。

在 Eclipse 中,我使用为表准备好的语句编写了插入值的代码。由于 ID 是一个 auto_increment,我没有将它包含在插入语句中。

String Query =
"INSERT INTO JobCard (JobNo, RegNo, Service_Type, Customer_Complaints)
VALUES (?,?,?,?)";

但输出显示:

java.sql.SQLException: Parameter index out of range
(5 > number of parameters, which is 4).
at
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
at
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
at
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
at
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
at
com.mysql.jdbc.PreparedStatement.checkBounds(PreparedStatement.java:3717)
at
com.mysql.jdbc.PreparedStatement.setInternal(PreparedStatement.java:3701)
at
com.mysql.jdbc.PreparedStatement.setString(PreparedStatement.java:4552)
at
example.Connect.DoInsertIntoDB(Connect.java:40)

谁能告诉我如何传递参数列表?请帮我解决这个错误!!

更新:

这是我的代码:方法调用是:

System.out.println(strLine);

String[] dbColumnValues = strLine.split("%");
Connect.DoInsertIntoDB(Long.parseLong(dbColumnValues[0]),dbColumnValues[1],dbColumnValues[2], dbColumnValues[3]);

方法定义:

public static void DoInsertIntoDB(Long JobNo, String RegNo, String Service_Type, String Customer_Complaints){


String Query = "INSERT INTO JobCard (JobNo, RegNo, Service_Type, Customer_Complaints) VALUES (?,?,?,?)";
try {
Connection conn = toConnect();

PreparedStatement pstmt = conn.prepareStatement(Query);

pstmt.setLong(2, JobNo);
pstmt.setString(3, RegNo);
pstmt.setString(4, Service_Type);
pstmt.setString(5, Customer_Complaints);

pstmt.executeUpdate();
pstmt.close();
conn.close();

} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

最佳答案

需要阅读您的堆栈跟踪。在您的代码中(在 Connect.java 的第 40 行),您试图将一个值设置为第 5 个值?但是您准备好的语句中只有 4 个 ?s。

关于java - 将值插入 mysql 表所需的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5604984/

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