[英]how to insert date in mysql using jsp?
这是我编辑的代码...
java.sql.Timestamp sqlNow = new java.sql.Timestamp(new java.util.Date().getTime());
stmt = con.createStatement();
//stmt.executeUpdate("INSERT INTO cregn values('"+appno+"','"+usname+"','"+upwd +"','"+fname+"','"+mname+"','"+lname+"','"+dob+"','"+gend+"','"+faname+"','"+saddr+"','"+caddr+"','"+staddr +"','"+pin+"','"+cno+"','"+email+"','"+occ+"','"+secques+"','"+answer+"','Processing','"+sqlNow+"')");
pst = con.prepareStatement("INSERT INTO cregn (aplno, username, pwd, firstname,middlename,lastname, dob,gender, fathername, street,city,state, pincode, phone, email,occupation,secques,answer,dor) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
pst.setInt(1, appno);
pst.setString(2, usname);
pst.setString(3, upwd);
pst.setString(4, fname);
pst.setString(5, mname);
pst.setString(6, lname);
pst.setString(7, dob);
pst.setString(8, gend);
pst.setString(9, faname);
pst.setString(10, saddr);
pst.setString(11, caddr);
pst.setString(12, staddr);
pst.setString(13, pin);
pst.setString(14, cno);
pst.setString(15, email);
pst.setString(16, occ);
// pst.setString(17,ph);
pst.setString(17, secques);
pst.setString(18, answer);
pst.setTimestamp(19, sqlNow);
pst.executeUpdate();
out.println("Registration Successful for application " + appno);
} catch (Exception ee) {
out.println("Invalid Data! All fields are mandatory..." + ee.getMessage());
}
%>
执行此代码错误后,显示“无效数据!所有字段均为必填项。数据截断”
您没有执行该语句。
您需要致电executeUpdate
您必须在pst
上调用execute
或executeUpdate
才能真正完成工作。 例如,最后:
pst.executeUpdate();
您所显示的代码所做的只是准备执行语句,而不执行该语句。 这是PreparedStatement
和Statement
之间的主要区别之一。 在Statement
,将SQL直接传递给executeUpdate
(如使用stmt
在注释行中所示)。 使用PreparedStatement
,可以为SQL提供?
完成后,设置这些参数, 然后调用尚未完成的executeUpdate
(或execute
)。
在pst
上没有executeUpdate()
。
使用pst.executeUpdate();
执行查询并确保在事务中必须setAutoCommit(true)
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.