怎样才可以把订单表里面的这条数据插入到pj表里面

这是订单点击完成按钮跳转执行页面


 <body>
<% request.setCharacterEncoding("utf-8");
String upid="";
      String name=request.getParameter("name"); 
Class.forName("com.mysql.jdbc.Driver");
 Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/jz?useSSL=false","root","root");
      PreparedStatement pt=con.prepareStatement("select * from dd where name=?",ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
      pt.setString(1,name);
      
      ResultSet rs=pt.executeQuery();
      %>
       <center><table border="1px"> 
       <h3 class="panel-title text-center">您的订单</h3>
     <br><tr><td>编号</td><td>账号</td><td>电话</td><td>地址</td><td>时间</td><td>类目</td><td>金额</td><td>备注</td><td>状态</td><td>操作</td></tr>
<% while(rs.next()){
upid=rs.getString(1);
%>
<tr><td><%=rs.getString(1) %></td><td><<%=rs.getString(2) %>"></td><td><<%=rs.getString(3) %>"></td><td><<%=rs.getString(4) %>"></td><td><%=rs.getString(5) %></td>
<td><%=rs.getString(6) %></td><td><%=rs.getString(7) %></td><td><%=rs.getString(8) %></td><td><%if(rs.getInt("zt")==0){out.print("未接单");}else{out.print("已接单");} %></td>
<td><a href="wc.jsp?upid=<%=upid%>">完成</a></td></tr>
<%}%> 
</table></center>
<% 
rs.close();

con.close();%>
  </body>

执行页面

 <body>
    <%     request.setCharacterEncoding("utf-8");
         String i=request.getParameter("upid");
   session.setAttribute("id",i);
   String name = request.getParameter("name");
  String dh=request.getParameter("dh");
  String dz=request.getParameter("dz");
   String sj=request.getParameter("sj");
   String num=request.getParameter("num");
   String je=request.getParameter("je");
   String bz=request.getParameter("bz");
      Class.forName("com.mysql.jdbc.Driver");//加载驱动   
       Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/jz?useSSL=false","root","root");
      PreparedStatement pStmt=conn.prepareStatement("select * from dd where id=?");  
pStmt.setString(1, i);
       ResultSet rs = pStmt.executeQuery(); 
 PreparedStatement tmt = conn.prepareStatement("insert into pj values(?,?,?,?,?,?,?)");  
 tmt.setString(1, i);
 tmt.setString(2,name);
tmt.setString(3,dh);
tmt.setString(4,dz);
tmt.setString(5,sj);
tmt.setString(6,je);
tmt.setString(7,bz);
int rst=tmt.executeUpdate();  
 if (rst!= 0){  request.getRequestDispatcher("wcdd.jsp?title="+i+"").forward(request,response);
}
                         
     
%>

首先,你需要使用JDBC连接到你的MySQL数据库并准备好需要查询的数据。你需要查询每个订单的信息,包括编号、账号、电话、地址、时间、类目、金额、备注和状态。

然后,你需要使用一个循环来遍历查询结果,并将每个订单的信息插入到你的数据库表中。在这个例子中,我们将使用Java中的PreparedStatement对象来执行SQL查询,并使用ResultSet对象来获取查询结果。

接下来,你需要在你的表中创建一个新列,用于存储每个订单的编号。你可以使用Java中的JDBC API来创建这个新列,并将其命名为“upid”。

最后,你需要将每个订单的信息插入到你的数据库表中,使用PreparedStatement对象来执行INSERT语句。你需要使用ResultSet对象来获取每个订单的数据,并将其插入到“upid”列中。

这样,你就可以将每个订单的信息插入到你的数据库表中了。

  • 以下回答由chatgpt基于相关博客总结生成:

    答案:

    针对问题,“请问我应该在哪里执行插入操作,需要用到哪些语句和参数,以及如何保证插入的数据正确无误?”,我给出如下的解决方案:

    1. 首先,需要确定要插入的数据需要在哪张表中。需要针对该表建立好对应的数据结构,包括数据类型、约束等。
    2. 在确定好要插入的表之后,需要编写对应的SQL语句进行插入操作。语句的格式为:INSERT INTO 表名(列名1,列名2,....) VALUES(值1,值2,....)。需要将要插入的数据写到VALUES后面的小括号内,每个值需要用逗号分隔。
    3. 为了保证插入的数据正确无误,可以通过以下方法进行验证:
    4. 检查插入的值与列的数据类型是否匹配。如果不匹配,则可能会导致插入失败或者数据错误。
    5. 检查是否有约束条件,如唯一性约束、非空约束等。如果违反约束条件,则会导致插入失败或者数据错误。
    6. 在插入之前,可以通过查询该表中的数据,了解已有的数据类型、约束等信息。
    7. 最后,执行SQL语句进行插入。

    下面是一个示例,假设要向名为“student”的表中插入一组数据,包括姓名(name)、年龄(age)、性别(gender):

    -- 创建表student
    CREATE TABLE student (
       id INT PRIMARY KEY AUTO_INCREMENT,
       name VARCHAR(50) NOT NULL,
       age INT NOT NULL,
       gender VARCHAR(10) NOT NULL
    );
    
    -- 插入数据
    INSERT INTO student(name, age, gender) VALUES('张三', 20, '男');
    

    在执行插入操作之前,需要先创建好对应的数据表,并编写好对应的完整SQL语句。同时,需要注意要插入的数据与数据表的数据结构是否匹配。插入操作成功时,可以通过查询该表的数据,确认插入的数据是否正确无误。