淺談如何用JDBC串連SQL Server 2000

來源:互聯網
上載者:User

用jdbc串連sql server 2000問題總結:
1、安裝sql server2 000
安裝sql server 2000補丁sp3
安裝sql server 2000 for sp3的驅動程式
(先打補丁sp3,再安裝針對sp3的驅動程式,安裝補丁時,為保險起見,兩種驗證方式的都裝一遍,我是先裝windows驗證,再裝sql server驗證的)
開啟jbuilder
2、tools_configure_libraries  new一個sqlserver,在library paths中加入驅動程式安裝目錄下lib檔案夾中的三個jar檔案
3、project——default projectproperties在paths頁下的required libaraes頁中加入第1步new的sqlserver
4、tools——enterprise setup(jb9)
enterprise——enterprise setup(jb2005)
在彈出的對話方塊的database driver頁中,添加第1步new的sqlserver,確定
5、重啟jbuilder
6、tools——database pilot
在彈出的視窗的菜單中選view——option
在彈出的對話方塊中選driver頁面,點add
在driver class文字框中輸入com.microsoft.jdbc.sqlserver.sqlserverdriver,確定
7、設定名為com.microsoft.jdbc.sqlserver.sqlserverdriver的driver class
driver是com.microsoft.jdbc.sqlserver.sqlserverdriver
url是jdbc:microsoft:sqlserver://localhost:1433;databasename=資料庫名(如:cardsystem)
用jdbc串連sql server 2000常見問題分析-1:

java.sql.sqlexception: [microsoft][sqlserver 2000 driver for jdbc]error establis 
hing socket. 
       at com.microsoft.jdbc.base.baseexceptions.createexception(unknown source 

       at com.microsoft.jdbc.base.baseexceptions.getexception(unknown source) 
       at com.microsoft.jdbc.base.baseexceptions.getexception(unknown source) 
       at com.microsoft.jdbc.sqlserver.tds.tdsconnection.(unknown source) 

       at com.microsoft.jdbc.sqlserver.sqlserverimplconnection.open(unknown sou 
rce) 
       at com.microsoft.jdbc.base.baseconnection.getnewimplconnection(unknown s 
ource) 
       at com.microsoft.jdbc.base.baseconnection.open(unknown source) 
       at com.microsoft.jdbc.base.basedriver.connect(unknown source) 
       at java.sql.drivermanager.getconnection(drivermanager.java:523) 
       at java.sql.drivermanager.getconnection(drivermanager.java:171) 
       at dbtest.init(dbtest.java:32) 
       at dbtest.(dbtest.java:25) 
       at dbtest.main(dbtest.java:46) 
press any key to continue...
[/pre]
出現上邊錯誤的主要原因是預設的資料庫伺服器連接埠 1433沒有開啟,無法直接連接,如果成功升級到sp3則這個問題可以結決。還有就是資料庫一定要用windows和資料庫混合身分驗證方式。

用jdbc串連sql server 2000常見問題分析-2:
在安裝安裝sqlserver2000 for sp3的驅動程式時,彈出對話方塊提示:"以前的某個程式安裝已在安裝電腦上建立掛起的檔案操作"
原因:以前裝過sql server,後來刪掉。現在重裝,卻出現“以前的某個程式安裝已在安裝電腦上建立掛起的檔案操作。運行安裝程式之前必須重新啟動電腦”的錯誤。無法進行下去。
解決步驟是:
1)添加/刪除程式中徹底刪除sql server。
2)將沒有刪除的sql server目錄也刪除掉。
3)開啟登錄編輯程式,在hkey_local_machine/system/currentcontrolset/control/session  manager中找到pendingfilerenameoperations項目,並刪除它。這樣就可以清除安裝暫掛項目。
4)刪除註冊表中跟sql server相關的鍵。
其實估計只要做第3步就可以搞定,這樣就可以清除安裝暫掛項目。自己是先走了1,2,4,最後  做了3才搞定。所以估計3才是最關鍵的。
採用sql server driver 來實現對sqlserver資料庫的操作時,一般代碼如下:

 

connection con = null; 
preparestatement pstmt = null; 
try{ 
   class.forname("com.microsoft.jdbc.sqlserver.sqlserverdriver"); 
   con = drivermanager.getconnection("jdbc:microsoft:sqlserver//localhost:1433;databasename=pubs","sa","sa"); 
   pstmt = con.preparedstatment("insert ...."); 
   //...... 
}catch(classnotfoundexception e){ 
   e.printstacktrace(); 
}catch(sqlexception e){ 
   e.printstacktrace(); 
}finally{ 
   try{ 
         if (pstmt != null) pstmt.close(); 
         if (con != null) con.close(); 
   }catch(exception e){ 
         e.printstacktrace(); 
   } 
}
[/pre]
如果是sqlserver2005,則改成:

   class.forname("com.microsoft.sqlserver.jdbc.sqlserverdriver"); 
   con = drivermanager.getconnection("jdbc:sqlserver//localhost:1433;databasename=pubs","sa","sa"); 
 

> java.sql.sqlexception: [microsoft][sqlserver 2000 driver for jdbc]error establishing socket.
[/pre]

估計是你串連sql server的連接埠設定有問題,你可以查看一下連接埠,看看是不是1433。
解決:出現[microsoft][sqlserver 2000 driver for jdbc]error establishing socket
凡是出現這種錯誤的,都可以說不是程式本身的錯誤,一般人都會寫jdbc:microsoft:sqlserver://localhost:1433;這樣寫是對的,很多是由於連接埠的問題,請查看一下連接埠,如下:
1)開啟"企業管理器",開啟控制台根目錄>sql server 組>資料庫
2)在相應"資料庫"上單擊右鍵,選擇"屬性"
3)選擇"常規"選項卡,點擊"網路設定",如啟用的協議中無"tcp/ip協議"將其加入
4)選擇"tcp/ip協議",點擊"屬性",檢查其連接埠號碼是否為1433
5)如連接埠號碼為1433將其修改為其它連接埠號碼,修改jdbc串連語句,將連接埠號碼同樣改為新啟用的連接埠號碼,如jdbc:microsoft:sqlserver://server_name:1400(假設新連接埠號碼為 1400)
【編輯精選】

淺談通過使用jdbc的statement進行資料操作
java高手詳解使用jdbc的步驟
淺談db2 jdbc驅動程式及其支援的功能
詳解jdbc與hibernate區別
jdbc串連mysql資料庫關鍵四步
淺談jdbc的概念理解與學習
本貼來自天極網群樂社區--http://q.yesky.com/group/review-18217272.html

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.