Java 未更新MySQL数据库表
我的数据库表没有插入此信息,我看不出错误在哪里,以及插入是否成功。请帮忙Java 未更新MySQL数据库表,java,mysql,jdbc,Java,Mysql,Jdbc,我的数据库表没有插入此信息,我看不出错误在哪里,以及插入是否成功。请帮忙 try{ Class.forName("com.mysql.jdbc.Driver").newInstance(); Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/payroll_system", "root", "");
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/payroll_system", "root", "");
PreparedStatement ps = con.prepareStatement("INSERT INTO payroll_system.employee_info(employeeID, FirstName, LastName, Admin,DOB,Address,Email,HourlyRate,Gender,ALeaveBalance,SLeaveBalance,ActiveStatus,Role,BSB,BankName,AccNumber,SuperNumber,SuperCompany) values(?,?,?,?,?,?,?,?,?,?,?,1,?,?,?,?,?,?)");
ps.setString(1, employee_id);
ps.setString(2, firstName);
ps.setString(3, lastName);
ps.setString(4, admin);
ps.setString(5, DOB);
ps.setString(6, address);
ps.setString(7, email);
ps.setString(8, HPR);
ps.setString(9, gender);
ps.setString(10, ALB);
ps.setString(11, SLB);
ps.setString(12, Role);
ps.setString(13, BSB);
ps.setString(14, BankName);
ps.setString(15, BAN);
ps.setString(16, SAC);
ps.setString(17, SAN);
ResultSet rs = ps.executeQuery();
st=rs.next();
if(st) {
out.println("Account successfully created!");
RequestDispatcher rd = request.getRequestDispatcher("index.html");
rd.include(request, response);
}
else{
RequestDispatcher rd = request.getRequestDispatcher("changePassAdmin.html");
rd.include(request, response);
}
}catch(Exception e)
{
e.printStackTrace();
}
out.close();
executeQuery
仅用于查询,您需要编写
ps.executeUpdate();
executeQuery
仅用于查询,您需要编写
ps.executeUpdate();
你有例外吗?请张贴stacktrace@Funtik这是一个web应用程序。当我按下html中的submit按钮(它对这个servlet有表单操作)时,它只显示一个带有这个servlet的url的空白页面。你有任何异常吗?请张贴stacktrace@Funtik这是一个web应用程序。当我按下html中的submit按钮(它对这个servlet有表单操作)时,它只显示一个包含这个servlet的url的空白页面。谢谢,我会尝试一下。我得到一个错误类型不匹配:无法从int转换为resultstread到Javadoc
executeUpdate
不会返回ResultSet
(结果集中应该是什么?—您没有执行查询),而是返回受影响记录的数量作为int。对于您的插入,您希望得到1。谢谢,它可以工作!我会接受你的回答,但如果更新成功,你能告诉我如何打印(“成功”)吗?我已经更新了上面的代码以向您显示更改。int count=ps.executeUpdate();如果(count==1){out.println(“success”);…
谢谢,我会尝试一下。我得到了一个错误类型不匹配:无法从int转换到ResultSet到Javadoc。executeUpdate
不会返回ResultSet
(结果集中应该是什么?——您没有执行查询)但是受影响记录的数量为int。对于您的插入,您希望得到1。谢谢!我会接受您的回答,但如果更新成功,您能告诉我如何打印(“成功”)吗?我已更新了上面的代码以显示更改。int count=ps.executeUpdate();if(count==1){out.println(“成功”);…