最近兩天一個同學說串連sql server 2000總是不成功,不懂為什麼,上網查了很久也沒找到實質性的答案。於是我就接手,想挑戰一下這“巨大的挑戰”。可很不幸,我搞了一天晚上都沒成功。剛開始的時候是沒有到類,後來發現是沒匯入包。但問題還是沒有解決,出現的。[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket 錯誤,上網找了很久也沒找到答案,後來才發現是沒有打補丁。以下就串連sql總結如下幾點注意的地方
1、裝sql server 200的時候盡量不要選擇系統認證,要選擇混合認證,也就是說用sa這個使用者!
2、將資料來源驅動msbase,mssqlserver,msutil這三個包匯入你的工程中!
3、可以在命令列中打“ telnet 1433 ”命令查看你的sql server 連接埠是否已經開啟了!
4、檢查你的SQL有沒有打補丁,沒有的話要打上補丁,檢查的方法是在查詢分析器中運行:
“select @@version ”。如果出來的版本號碼是8.00.760以下,則表明你未安裝sp3以上的補丁
5、jdbc的版本一定要和sql server 的版本一致。如果是sp3的sql就要sq3的包,如果是sp4的sql就要sp4的包。
6、打補丁的時候還要注意,你下補丁那個檔案大概是60多M的EXE檔案,你雙擊啟動並執行時候其實不是安裝補丁,只 是解壓到指定的檔案夾中而已,要真正地安裝還要到那個目錄下運行 setup.bat 這個檔案。
以上就是我的總結,如果上面的工作你都做了還是不行的話,我就不懂了,另找高手!現附人本人串連sql的主要代碼:
String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydata";
String user ="sa";
String password ="123456";
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
try{
Class.forName(driver);
}catch(ClassNotFoundException e){
e.printStackTrace();
}
try{
conn = DriverManager.getConnection(url,user,password);
stmt = conn.createStatement();
}catch(SQLException e){
System.out.println(e.toString());
}
System.out.println("資料庫操作成功,恭喜你");