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

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

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

    歲月如哥
    人生非夢
    posts - 50,comments - 144,trackbacks - 0
    建了一個存儲過程
    create procedure PR_YDFT_GETFT_TIME        
      
    @AJLB      tinyint,            -- 案件類別           
      @AJBHLIST  varchar(1500),      -- 案件編號列表
      @KSSJ      datetime,           -- 開始時間
      @JSSJ      datetime            -- 結束時間 

    as 
    begin
    …………
    select BH, AH from K_ZS..B_ZX where(這里返回一個結果集)
    end

    在java代碼中如下調用(時間類型為java.sql.Date),即使數據有數據,也不能正確返回結果集:
     public Object doInCallableStatement(CallableStatement cs) throws SQLException, DataAccessException {
         
    //………………                                                
         cs.setDate(3new java.sql.Date(kssj.getTime()));
         cs.setDate(
    4new java.sql.Date(jssj.getTime()));
         
    //………………                                                                                    
    }
    但是將方法改為如下(時間類型為String),就可以正常返回結果集:
    public Object doInCallableStatement(CallableStatement cs) throws SQLException, DataAccessException {
        
    //………………
         cs.setString(3, kssj);
        cs.setString(
    4, jssj);
        
    //………………                                                                                      
      }


       
    另外在sybase的sqladv中如下兩種調用方式均可正確返回結果:
    use K_RW
    go
    PR_YDFT_GETFT_TIME 
    2, "109052298;", "2008-08-19 14:00:00", "2008-08-19 17:00:00"
    use K_RW
    go
    declare @KSSJ datetime 
    declare @JSSJ datetime 
    select @KSSJ = convert(datetime,"2008-08-19 14:00:00")
    select @JSSJ =  convert(datetime,"2008-08-19 17:00:00")
    execute PR_YDFT_GETFT_TIME 2, "109052298;", @KSSJ ,@JSSJ
    在java代碼中調用只是將java.sql.Date參數類型改為String傳遞就能正常返回結果集,是不是因為sybase的驅動問題


    問題原因找到了,是因為使用cs.setDate()給數據庫傳參數只會日期部分。
    如果改用如下代碼就可以:
    cs.setTimestamp(3new java.sql.Timestamp(dKssj.getTime()));
    cs.setTimestamp(
    4new java.sql.Timestamp(dJssj.getTime()));
    cs.setTimestamp()可以將日期和時間部分都傳給數據庫。
    posted on 2008-08-30 14:53 歲月如歌 閱讀(1804) 評論(1)  編輯  收藏 所屬分類: java

    FeedBack:
    # re: java調用存儲過程的傳遞Date參數的問題
    2008-09-01 09:47 | yz
    支持作者的原創文章,通過作者的幾篇文章,對儲存過程的應用多了一些了解,非常感謝!  回復  更多評論
      
    主站蜘蛛池模板: 久久久青草青青国产亚洲免观| 国产精品亚洲一区二区三区久久 | 亚洲国产综合精品一区在线播放| 国产精品亚洲二区在线观看 | 亚洲婷婷综合色高清在线| 亚洲av无码成人精品国产| 国产免费AV片在线播放唯爱网| 中文字幕亚洲不卡在线亚瑟| 国产精品无码免费专区午夜 | 91精品免费在线观看| 亚洲va乱码一区二区三区| 毛片大全免费观看| 亚洲风情亚Aⅴ在线发布| 免费污视频在线观看| 亚洲精品mv在线观看| 男人的好免费观看在线视频| 亚洲国产午夜精品理论片在线播放 | 13一14周岁毛片免费| 国产精品亚洲自在线播放页码| 99免费精品视频| 久久久无码精品亚洲日韩蜜桃 | 免费A级毛片无码A∨男男| 日本一区二区在线免费观看| 亚洲va久久久噜噜噜久久| 成年人网站免费视频| 高潮毛片无遮挡高清免费| 亚洲AV综合色区无码一区爱AV | 亚洲春色另类小说| 韩国日本好看电影免费看| 亚洲视频手机在线| 成人免费午夜视频| 亚洲乱码无限2021芒果| 日韩毛片无码永久免费看| 国产伦精品一区二区免费| 亚洲精彩视频在线观看| 吃奶摸下高潮60分钟免费视频| youjizz亚洲| 永久亚洲成a人片777777| 免费v片在线观看视频网站| 免费看又黄又爽又猛的视频软件| 免费精品一区二区三区在线观看|