2017-10-20 84 views
0
qr=ss.createQuery("update Adddata set std_name='" + 
request.getParameter("std_name") + "',std_sex='" + 
request.getParameter("std_sex")+ "',std_mob='" +  
request.getParameter("std_mob")+ "',std_email='" + 
request.getParameter("std_email")+ "',std_course='" + 
request.getParameter("std_course")+ "',std_add='" + 
request.getParameter("std_add")+ "',std_fname='" + 
request.getParameter("std_fname")+ "',std_date='" + 
request.getParameter("std_date")+"' 
where stid ='"+request.getParameter("std_id")+"'"); 

回答

0

Mysql的默认日期格式是yyyy-mm-dd

请检查您的request.getParameter("std_date")价值日期格式。

如:日期:2017-10-20

更新HQL查询

Query query = session.createQuery("update Adddata set std_name= :stdname" + 
         " ,std_sex = :stdsex "+ 
         ... //do the same for other values 
         " ,std_date = :stddate" 
         " where stid = :stdid"); 
    query.setParameter("stdname", request.getParameter("std_name")); 
    query.setParameter("stdsex", request.getParameter("std_sex")); 
    ... //do the same for other values 

设置日期值

query.setDate("stddate", request.getParameter("std_date")); 

,或者如果你考虑的时间也

query.setTimestamp("stddate", dateObj) 
query.setParameter("stdid", request.getParameter("std_id")); 
int result = query.executeUpdate(); 
+0

的request.getParameter值日期格式是yyyy- mm-dd.so我如何使用HQL查询使用这种格式更新我的日期,给我充分的描述。 –

+0

检查编辑的答案。更多信息[HQL更新日期](https://stackoverflow.com/questions/291620/how-to-assign-date-parameters-to-hibernate-query-for-current-timezone) – Asha

相关问题