这是我按照colunm插入数据的代码,但我的困惑是我在users_id中提供的是什么类型的值,这是foriegn key in order table我希望users_id通过当前登录用户的会话给出想要下订单的值并且它的id是保存aginst他的订单记录代码在这里。
<% request.getSession().getAttribute("users_id");%>
<% String add = request.getParameter("add");
String type = request.getParameter("order_type");
String city = request.getParameter("city");
String veh = request.getParameter("vehicles");
String date = request.getParameter("order_date");
String users_id = request.getParameter("users_id");
Class.forName("com.mysql.jdbc.Driver");
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/auto_lube","root", "mehar");
Statement st = con.createStatement();
System.out.println(add);
//ResultSet rs;
int i = st.executeUpdate("INSERT INTO `user_order` (`id`, `address`, `order_type`, `city`, `vehicle`, `order_date`, `users_id`) VALUES (NULL, '"+add+"', '"+type+"', '"+city+"', '"+veh+"', '2','"+users_id+"')");
%>
答案 0 :(得分:0)
首先,尝试避免使用JSP或您使用的任何设计页面上的代码。因为任何问题页面崩溃,您的代码将显示在页面上。因此,使用像servlet这样的后端工具,但这已经很老了,但为了学习,你可以使用它。如果可能,那么使用hibernate,它提供了非常好的支持。
将数据传递给java代码,然后访问会话数据。 如果可能的话,然后使用JSON传递订单详细信息,这将非常有用,同时存储数据并访问它并在任何地方更改它。
假设您要编辑订购商品的数量等,那么每次您不必向服务器发送请求时,json将非常有用。
使用预准备语句在DB中输入数据。
并使表order
只有用户ID(从会话中获取)和订单号等订单明细。
和其他具有订单号和订购商品的表ordermaster
,以及您需要的数量和价格以及订购时间和其他详细信息。所以这里ordermaster
的订单ID将是order
表中的外键。