int workserial,int Id,int roomId //几个变量
sql = "select dutyman from taw_rm_assign_sub where workserial = ?";
sql ="select b.id from taw_rm_assignwork a,taw_rm_assignwork b where   a.room_id = b.room_id and a.room_id = ? and workserial = ? and a.starttime_defined = b.endtime_defined and a.id = ? ";
sql = "select dutyman from taw_rm_record where id = "+b.id+"";
sql = "update taw_rm_record set dutyman = "+rs.getString(Dutyman)+" where id = ?";//应用的sql
sql = "update taw_rm_record set hander = B where id = ?";
sql = "update taw_rm_record set receiver = A where id ="+b.id+"";
//最后提交

解决方案 »

  1.   

    你在你的这个JAVA类中,或者在其他的JAVA类中应该定义一下你连接数据库的类文件.你想要连接那个数据库,就需要写不同的连接数据库的代码. 你可以上网搜索一下.
      

  2.   

    如果先不说提交到哪个库,只要完成一个java的代码,应该怎么写呢,不考虑数据库怎么连接
      

  3.   

    首先你要通过这些sql得到 PreparedStatement
    PreparedStatement pstmt = conn.prepareStatement(sql);
    然后对 sql 里面的 ?进行赋值。如 a,b就是代表具体的数值
    pstmt.setInt(1, a);
    pstmt.setString(2,b);
    .......最后 pstmt.executeQuery(); // 查询用
         pstmt.executeUpdate();  //更新 删除,插入用最后conn.commit();
      

  4.   

    连接connection lz 会么?
      

  5.   

    多条sql可以一起执行吗,连接的是informix
      

  6.   

    可以考虑用存储过程,封装多个sql
      

  7.   

    sql = "select dutyman from taw_rm_assign_sub where workserial = ?";  这个语句输出的字段拼成字符串呢?在线等候,谢谢
      

  8.   

    "可以考虑用存储过程,封装多个sql"那是怎么用呢?
      

  9.   

       public boolean insertsComm(String[] sqls){
      Connection con=null;
      Statement  pstm=null;
      int[] k=null;
      boolean  bool_return=true;
      try{
      con=dbm.getConnection("sqlserver");
    //   con.setAutoCommit(false);
      pstm = con.createStatement();
      for(int j=0;j<sqls.length;j++){
      pstm.addBatch(sqls[j]);   }
      k= pstm.executeBatch();
      pstm.close();
       }
      catch(Exception ex){
       System.out.println("调用insertsComm时:"+ex.toString());
       bool_return=false;
      }
      finally{
    if(con!=null)dbm.freeConnection("sqlserver",con);
      }
      return bool_return;
       }
      

  10.   

    CallableStatement cstmt = null;
    cstmt = DBConn.prepareCall("{call USP_getPopedom('" + Parent + "')}",java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);

    ResultSet RS = cstmt.executeQuery();
    while(RS.next() && !RS.isAfterLast())
    {
    .....................
    }
    ..................................................
    这是一般的select返回数据。
    多个的话可以用CallableStatement返回多个结果集
    ..................................................
    Comm = DBConn.prepareCall(strSQL);
    Comm.execute();  //1
      RS = Comm.getResultSet();
      while(RS.next())
      {
         .............
      }
      RS.close();  //2
      if (Comm.getMoreResults())   ///////用getMoreResults()
          RS = Comm.getResultSet();
      while(RS.next())
      {
         ........
       }
       RS.close();.................................Comm.close();
    DBConn.close();
      

  11.   

    操.....我都开一次源了:
    CREATE       procedure  GetSaleCu
    @PeD varchar(20)
    as
    begin select CustomerName
    ,isnull(salecustomerdaily.forecasemoney,'') as forecasemoney
    ,isnull(salecustomerdaily.serverperiod,'') as serverperiod
    ,isnull(salecustomerdaily.ForecaseTractDate,'') as ForecaseTractDate
    ,isnull(salecustomerdaily.UpdateDate,'') as UpdateDate
    from salecustomerdaily
                      where salecustomerdaily.PersonID=@PeD

     
    select lastlinkcontent
    ,basedictionary.name as CusStateName
    ,convert(varchar(3)
                       ,isnull(salecustomerdaily.forecasemoney,'') as forecasemoney
                       from salecustomer
                       where salecustomer.PersonID=@PeD end
    GO
      

  12.   

    查一下CallableStatement,getMoreResults()就可以了。
      

  13.   

    你刚学习就用最简单的罗..一条语句一个executeQuery();,executeUpdate();不要用存储过程了,晕...真是浪费支源.