<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    追隨Java
    簡單的事情重復做,就會產生累積效應!
    posts - 260,  comments - 338,  trackbacks - 0
         有進要通過jdbc調用存儲過程,來說一下怎樣來實現?
     在我見過的有兩種情況:
             1)返回一個結果集(ResultSet)。
      2)返回一個特定的值。
     下面來詳細的說明。
     1)返回一個結果集(ResultSet),這種類似通常的處理結果集
        如果事先就有一個類似如下的procedure
    CREATE PROCEDURE getShipQuantity @jsid int  AS
    SELECT jf_js_id,SUM(jf_ship_quantity) AS shipqty 
    FROM tjobsheet_finish f WHERE (jf_js_id=@jsid)
    GROUP BY jf_js_id
                  那么我們將通過如下的代碼來調用
      String sql = "{ call getShipQuantity(?) }";
             Connection con 
    = getSession().connection();//通過hibernate得到的連接
             ResultSet  rs 
    = null;
            BigDecimal shipQuantity 
    = new BigDecimal(0);
            
    try{
                 CallableStatement cs 
    = con.prepareCall(sql);
                cs.setInt(1,jsoId);//設置輸入參數
                rs 
    = cs.executeQuery();//返回結果集
                
    if(rs.next()){
                         shipQuantity 
    = new BigDecimal(rs.getDouble(2));
                }

                logger.debug(
    "shipQuantity --------------------- "+shipQuantity);
            }
    catch(Exception e){
                logger.debug(e);
            }

          2)返回一個特定的值。也就是說,在procedure的定義中已經用output輸出參數了。請看下面的proceduer
    create procedure getSingleWgt @@singleWgt numeric(8,3output,@jsnum varchar(11= '0000-0480'
    as
    declare @stwgt numeric(8,3)
    select  @stwgt = sum(b.stwgt)
    from js as a
    inner join jsactdtl as b 
    on a.jsnum = b.jsnum
    where a.completion = 1 
    and b.stflag = 22
    and a.jsnum = @jsnum
    select @@singleWgt = (@stwgt/orderedqty)  from js where jsnum = @jsnum

            那么我們將通過如下的代碼來調用
    String sql = "{ call getSingleWgt(?,?) }";
    Connection con 
    = getSession().connection();//得到connection
    try{
         CallableStatement cs 
    = con.prepareCall(sql);//通過它來執行sql
        cs.registerOutParameter(1,java.sql.Types.FLOAT);//注冊輸出參數
        cs.setString(2,shipment.getJsnum());//指出輸入參數
        
        
    if(cs.execute()){//執行
        float output = cs.getFloat(1);//返回值        
        }

    }
    catch(Exception e){
        logger.debug(e);
    }


            
    posted on 2005-09-01 13:59 Harryson 閱讀(606) 評論(0)  編輯  收藏 所屬分類: Jdbc

    <2005年9月>
    28293031123
    45678910
    11121314151617
    18192021222324
    2526272829301
    2345678

    常用鏈接

    留言簿(10)

    隨筆分類(319)

    AJAX

    Coffee House

    CSS

    Java

    JavaScript

    Open Source

    ProjectManagement

    友情Blog

    最新隨筆

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 色婷婷7777免费视频在线观看| 国产A∨免费精品视频| 四虎国产精品永久免费网址 | 国产黄色免费观看| 亚洲综合激情另类专区| 九九视频高清视频免费观看 | 99久久免费观看| 精品亚洲成AV人在线观看| 性无码免费一区二区三区在线 | 久久精品国产亚洲AV蜜臀色欲| 久草视频免费在线| 久久乐国产综合亚洲精品| 午夜寂寞在线一级观看免费| 亚洲国产精品99久久久久久| 亚洲?V无码乱码国产精品| 美女无遮挡拍拍拍免费视频| 亚洲AV无码一区东京热| 亚洲最大免费视频网| 亚洲欧美成人一区二区三区| 亚洲AV网站在线观看| 巨胸喷奶水www永久免费| 亚洲久本草在线中文字幕| 美女裸身网站免费看免费网站| 亚洲乱码无人区卡1卡2卡3| 国产一区在线观看免费| 好吊色永久免费视频大全| 色播亚洲视频在线观看| 成人性生交大片免费看午夜a | 国产一级婬片A视频免费观看| 亚洲狠狠综合久久| 手机在线毛片免费播放| a高清免费毛片久久| 久久久亚洲欧洲日产国码aⅴ| 毛片a级毛片免费播放下载| 久久一区二区三区免费| 亚洲手机中文字幕| 国产精品亚洲综合专区片高清久久久| 久久免费精品视频| 自拍偷自拍亚洲精品偷一| 久久久亚洲欧洲日产国码农村| 毛片视频免费观看|