我不知道我下面的代码有什么问题。
try {
String sql = "INSERT INTO `myporject`.`selectnation` (`nations` ,`package` ,`persons`) "
+ "VALUES ('?', ?, ?)";
PreparedStatement ps = connect.prepareStatement(sql);
if (ps.executeUpdate() != -1) {
ps.setString(1,"Japan" );
ps.setInt(2, this.pack);
ps.setString(3, jTextField1.getText());
这是 StackTrace
java.sql.SQLException: No value specified for parameter 1
最佳答案
您试图在设置参数之前执行prepareStatement
,因此您需要更改代码如下:
PreparedStatement ps = connect.prepareStatement(sql);
//set the parameters first
ps.setString(1,"Japan" );
ps.setInt(2, this.pack);
ps.setString(3, jTextField1.getText());
//now execute the prepared statement
if (ps.executeUpdate() != -1) {
//add your code
}
我建议你引用here了解 jdbc 概念。
关于java - 什么是 "java.sql.SQLException: No value specified for parameter 1 "?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40789101/