久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

使用sqlserver官方驅(qū)動包調(diào)用存儲過程遇到的坑及解決方法

瀏覽:117日期:2023-03-06 14:25:34

和外部系統(tǒng)做對接,對方提供了一個存儲過程,對方為sqlserver數(shù)據(jù)庫,我方為oracle數(shù)據(jù)庫。
需求簡單來說就是調(diào)用對方的存儲過程獲得結(jié)果,轉(zhuǎn)儲到我方庫,后續(xù)在對數(shù)據(jù)進行處理。

我寫了個代碼片段做測試,用jdbc來調(diào)用對方的存儲過程,可是在調(diào)用后就直接報錯了,錯誤信息如下

com.microsoft.sqlserver.jdbc.SQLServerException: 該語句沒有返回結(jié)果集

我就不理解了,為啥用數(shù)據(jù)庫連接工具調(diào)就沒問題呢?是有結(jié)果集的呀。

瘋狂找資料,找帖子。最后終于是找到了。

解決方法:

  1. 換驅(qū)動包。對方數(shù)據(jù)庫是SQL server2008,我用的是 sqljdbc4-4.0 。直接換了第三方開源的SQL Server數(shù)據(jù)庫的JDBC驅(qū)動程序 jtds1.2。問題解決,調(diào)用存儲過程的時候不再出錯。
  2. 在存儲過程首行添加 set nocount on (這個我沒實驗,因為存儲過程沒在我手里,操作不到)

最后記錄一段jdbc調(diào)用存儲結(jié)構(gòu)的代碼,一個參數(shù),返回結(jié)果集

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Test {
    final static String SERVERURL = "jdbc:jtds:sqlserver://127.0.0.1:1433;DatabaseName=XXX";
    final static String SERVERDriver = "net.sourceforge.jtds.jdbc.Driver";
    final static String SERVERUSERNAME = "username";
    final static String SERVERPASSWORD = "password";
 
    public static void main(String[] args) {
try {
    //調(diào)用存儲過程
    Class.forName(SERVERDriver);
    Connection conn = DriverManager.getConnection(SERVERURL, SERVERUSERNAME, SERVERPASSWORD);
    System.out.println("sql server連接成功");
    String call = "{call 存儲過程名稱(?)}";
    CallableStatement callableStatement = conn.prepareCall(call);
    callableStatement.setString(1, "2022-10-13");
    ResultSet rs = callableStatement.executeQuery();
    while(rs.next()) {
System.out.println(rs.getString("aaa"));
System.out.println(rs.getString("bbb"));
System.out.println(rs.getString("ccc"));
System.out.println(rs.getString("ddd"));
    }
    callableStatement.close();
    conn.close();
} catch (Exception e) {
    e.printStackTrace();
}
    }
}

到此這篇關(guān)于用sqlserver官方驅(qū)動包調(diào)用存儲過程遇到的一個坑的文章就介紹到這了,更多相關(guān)sqlserver官方驅(qū)動包調(diào)用存儲過程內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: MsSQL
主站蜘蛛池模板: 欧美日韩不卡合集视频 | 免费av在线播放 | 国产二区视频 | 免费av片在线 | 日韩中文字 | 欧美jizzhd精品欧美巨大免费 | 亚洲大尺度视频 | 天天干国产 | 国产主播一区 | 日本精品国产 | 亚洲中字幕女 | 亚洲第一男人天堂 | 亚洲精选久久久 | 亚洲视频欧美视频 | 久久一区 | 国产高清在线观看 | 精品日韩一区二区 | 国产富婆一级全黄大片 | 欧美激情精品久久久久久变态 | 老妇激情毛片免费 | 伊人操操 | 五月天婷婷激情视频 | 亚洲高清一区二区三区 | 伊人网在线 | 成人午夜免费视频 | 成人a在线视频免费观看 | 日韩在线观看一区二区 | 日韩高清在线播放 | 日韩在线观看毛片 | 亚洲不卡| 欧美日韩在线观看中文字幕 | 欧美一级片毛片免费观看视频 | 国产一级免费在线观看 | 999久久久久久久久 国产欧美在线观看 | 黄色av毛片| 国产福利91精品 | 欧美日韩福利视频 | 亚洲欧美精选 | 国产精品视频一 | 国产中文字幕在线观看 | 日本二区在线播放 |