【发布时间】:2023-04-10 05:29:02
【问题描述】:
我有如下的 html 表单。我想将数据添加到数据库表 itemspoinfo。我想按如下方式完成该功能;
- 如果给出的第一个药物名称和数量将其添加到数据库中。
如果给出的前 2 个药物名称和数量将其添加到数据库中。 (作为 2 个单独的记录以及 POno 和 Date)
因为这最多 5 条记录必须能够记录到数据库中
我找不到解决方案,请帮助我。
到目前为止我做了什么;
<%
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(CONN_STRING, USERNAME, PASSWORD);
if(request.getParameter("send")!=null){
String scom=request.getParameter("scompany");
String porderno=request.getParameter("pono");
String bdate=request.getParameter("date");
String drug1=request.getParameter("d1");
String qty1=request.getParameter("q1");
String drug2=request.getParameter("d2");
String qty2=request.getParameter("q2");
String drug3=request.getParameter("d3");
String qty3=request.getParameter("q3");
String drug4=request.getParameter("d4");
String qty4=request.getParameter("q4");
String drug5=request.getParameter("d5");
String qty5=request.getParameter("q5");
//getting todaydate
Date date = new Date();
Timestamp timestamp = new Timestamp(date.getTime());
String sql = "INSERT INTO purchaseorderinfo SET Supplier ='"+scom+"', PONo='"+porderno+"', ExpectedDate='"+bdate+"', PODate='"+timestamp+"' ";
pst=conn.prepareStatement(sql);
if((scom!=null && scom.length()>0)
&& (porderno!=null && porderno.length()>0)
&& (bdate!=null && bdate.length()>0)
&& (drug1!=null && drug1.length()>0)
&& (qty1!=null && qty1.length()>0)){
pst.execute();
String sql2="INSERT INTO itemspoinfo SET PODate=?, PONo=?, ItemName=?, Qty=?,";
pst2=conn.prepareStatement(sql2);
pst2.setTimestamp(1, timestamp);
pst2.setString(2, porderno);
%>
<script language="javascript">
alert("Sucessfuly Sent to "+scom);
</script>
<%
}
}
%>
【问题讨论】:
-
不要在jsp页面中使用java代码
-
您使用的是
update语句还是insert语句? -
您可能想了解Hibernate(ORM)
-
我同意@SuhailGupta。请为此任务使用一些 ORM(可能是 Hibernate)。