先查出一条数据,更新这条数据,代码

只贴调用过程的代码,只有传参没有返回

String call="{call dzjc.gzwfsj(?,?)}" ;           //调用语句  
   CallableStatement proc = PageDBConnection.getConnection().prepareCall(call); //调用存储过程 
   
   //这个存储过程无返回值
//需要注意的是存储过程的字段顺序和类型要跟过程中的对应上,让他们相同,call问号的个数和下边set的个数对应上,要让他们相同
      proc.setString(1,xm);
   proc.setString(2,age);
      proc.execute();    //执行  
   
   proc.close();
   PageDBConnection.getConnection().close();

public static void main(String[] args) {
  DataBaseConnection db=new DataBaseConnection();
  Connection c=db.getConnection();
  CallableStatement proc;
  try {
   proc = c.prepareCall("{  call p11(?,?) }");
   proc.setInt(1, 12);
//   proc.getString(2);

  
   
   
   proc.registerOutParameter(1, Types.INTEGER);
   proc.registerOutParameter(2, Types.CHAR);
   
   
   proc.execute();
   
//   int age = proc.getInt(1);
//   String age2 = proc.getString(2);
//   
//   System.out.println(age);
//   System.out.println(age2);
   
   
  } catch (SQLException e) {
   // TODO 自动生成 catch 块
   e.printStackTrace();
  }

//
//  proc.setString(2, poetName);

//  cs.execute();

  
 }

 

黑色头发  http://heisetoufa.iteye.com