[英]How to insert date selected separately into mysql using Java(JSP)
在我的項目中,我想通過使用選擇框將日期分別保存為日,月,年。 使用的代碼是
<%
String value=null;
String[] h=null;
h=request.getParameterValues("qns[]");
String expert=request.getParameter("expert");
int sday=Integer.parseInt(request.getParameter("sday"));
int smonth=Integer.parseInt(request.getParameter("smonth"));
int syear=Integer.parseInt(request.getParameter("syear"));
int eday=Integer.parseInt(request.getParameter("eday"));
int emonth=Integer.parseInt(request.getParameter("emonth"));
int eyear=Integer.parseInt(request.getParameter("eyear"));
String start=syear+"-"+smonth+"-"+sday;
String end=eyear+"-"+emonth+"-"+eday;
for(int i=0;i<h.length;i++)
{
s.savetask(h[1],expert,start,end);
}
%>
savetask函數是
public int savetask(String qnid,String userid,String start,String end)
{
int n=0;
try{
String sql="insert into task(user_id,question_id,start_date,end_date,status)values('"+qnid+"','"+userid+"','"+start+"','"+end+"',0";
n = db.modifyingQueries(sql);
}
catch(Exception e){
}
return n;
}
但這不是在表task
插入值。 task
的表格式為
task_id int (Auto increment)
user_id int
question_id int
start_date date
end_date date
status int
首先,您的sql行無效。最后沒有括號。
String sql="insert into task(user_id,question_id,start_date,end_date,status)values
('"+qnid+"','"+userid+"','"+start+"','"+end+"',0");
^
另外一個語法錯誤是,由於它是一個int
(在更新列結構之后實現),因此最后不需要在0
后加上"
。
如果仍然遇到其他異常,請提供堆棧跟蹤。
更新(有助於解決此問題的評論):
您需要做的是在String sql = ...
,放入System.out.println(sql)
,以便在控制台中打印query
。選擇該行並將其在數據庫查詢管理器中觸發。語法錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.