
一.本文內容
講訴使用JDBC建立Eclipse和Sql sever的橋梁的過程與其中可能遇見的問題。
二.詳細內容
1.JDBC驅動的下載
建議一定要上與SQL SEVER相關的微軟官網下載,以便找到最適合自己手中sql的版本驅動
本文我使用的是windows.10操作系統,SQL SEVER 2014 EXPRESS(設置了管理員登陸密碼),Eclipse(已配置好JDK)
截至至(2015年11月11日)
最新的驅動微軟下載地址為:https://www.microsoft.com/zh-cn/download/details.aspx?id=11774
Microsoft JDBC Driver 的主頁為:https://msdn.microsoft.com/en-us/data/aa937724.aspx
2 下載解壓
依照下載頁面的系統要求和安裝說明下載並安裝適合自己操作系統的驅動版本。
為避免不必要的麻煩需要額外注意的是安裝說明中:
3.找到所需要導入Eclipse的驅動文件
1.在eclipse中創建好一個JAVA項目和一個帶main函數的類(過程在此不再演示)
2.在項目中新建一個文件夾(名字隨意就好,這里為了方便,就名為lib)。
3.在解壓好的JDBC文件夾(Microsoft JDBC Driver 4.2 for SQL Server)中
按以下路徑找到chs文件夾:Microsoft JDBC Driver 4.2 for SQL Server\sqljdbc_4.2
打開chs文件下,在下面的文件中,找到適合自己版本的后綴名為“.jar”的文件
在這里我選擇的是 sqljdbc42.jar 驅動文件
4.將jar文件導入Eclipse
1.復制上一步找到的.jar文件
2.換回eclipse,右鍵點擊新建好的lib文件夾
3.將jar文件粘貼進lib文件
4.右鍵點擊lib文件夾中的jar文件
5.選擇 構建路徑-->>配置構建路徑(英文單詞我忘了,不過這一選項位置在紅色XX的下面,單詞旁邊的括號里的是B的選項)
導入后的情景如下:
5.在Eclipse中的工作算是完成了,現在完成在sql sever 中的工作(在這里默認大家都會建表建數據庫,就不對過程進行過多闡述)
1.為了方便,以數據庫管理員(sa)身份登陸連接
2.建立一個數據庫,這里為了方便,名為:“AdventureWorks”
3.在“AdventureWorks”數據庫中建立一張表:為了方便,名為“S”。
4.如果不是使用T—SQL語句建立的“S”表,還需對表進行設計。
5.對表“S”進行插入數據。
6.至此,順利的話,都不需要再碰SQL sever 了,不然的話,接下來在說。
7.已下是我建立的示例表:
6.回到Eclipse,對數據庫進行測試連接。
1.根據如下示例輸入代碼
2.注意看代碼注釋
注意:import的包名和package的包名,除非你建立的和我一樣,不然,請勿隨意“Crrl+c”和“Ctrl+v”。
1 package helloworld; //包名 2 3 //導入的包名 4 import java.sql.Connection; 5 import java.sql.DriverManager; 6 import java.sql.ResultSet; 7 import java.sql.Statement; 8 9 //類名 10 public class kelion { 11 12 //1433是TCP端口 13 //databaseName是數據庫名稱 14 //user是sql管理員的登陸名(默認的sa) 15 //密碼依照自己實際情況填寫,這里的“*”是示范(想要我的密碼,想得美) 16 17 static String connectionUrl = "jdbc:sqlserver://localhost:1433;" 18 +"databaseName=AdventureWorks;" 19 + "user=sa;" 20 + "password=******;"; 21 22 //主函數 23 public static void main(String[] args) throws Exception{ 24 // TODO 自動生成的方法存根 25 26 //注冊驅動程序所需語句 27 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 28 Connection con = DriverManager.getConnection(connectionUrl); 29 30 Statement stmt = con.createStatement(); 31 //從 “S”表中查詢 “Sno”列和“Ssex”列 32 ResultSet rs = stmt.executeQuery("select Sno,Ssex from S"); 33 34 //如果查到有數據,全部輸出 35 while(rs.next()){ 36 System.out.println(rs.getString("Sno")+","+rs.getString("Ssex")); 37 } 38 } 39 40 }
7.點擊Eclipse的運行按鈕(別問是小蟲,還是播放按鈕!!)
運行結果如下:
如果你也看到了上圖,恭喜,你可以直接點擊右上角或滑動到最后。
不然,你也可以吐槽后關掉或者接着往下看
三.遇到了問題?
常見問題:
問題提示:
通過端口 1433 連接到主機 localhost 的 TCP/IP 連接失敗。錯誤:“Connection refused: connect。。。。。。
解決方法:
1、打開Sql server 管理配置器(相信會看到到這的都知道到哪找它,萬一不知道,度娘會說話)
2、點擊MSSQLSERVER的協議,在右側的頁面中選擇TCP/IP協議
3、右鍵點擊TCP/IP協議,選擇“屬性”,需要修改連接數據庫的端口地址
4、跳出來的對話框,里面有好多TCP/IP的端口,找到“IP3”,更改IP地址 為自己電腦的IP地址(或者是127.0.0.1) 在TCP端口添加1433,然后單擊應用
5、修改“IPALL”的所有端口改成“1433”(還是這個界面,往下拉滾動條)
6、重新啟動服務
7.回到Eclipse,再次點擊運行一般就可以看到出運行結果了。
如果說你的服務里沒有右側的選項,可以就輸數據庫安裝不完全或出錯,解決方法,在此就不描述了。
如果說經過以上步驟,還是一樣的錯誤信息提示,那請檢查防火牆等錯誤提示顯示的其它可能的出錯處(或者尋求周圍人幫助,總之不怪我就行,哈哈)。
8.以上解決方法同樣適用於數據庫無法登陸,在與SQLServer建立連接時出現與網絡相關的或特定於實例的錯誤
四.參考網址(干貨)
對於學者來說,每使用一個新軟件,學習新技術,自己查詢官網的資料文檔往往是最有效的方式。
為了讓大家了解我解決問題的過程,在此貼出參考問題網址:
1.微軟JDBC官網:https://msdn.microsoft.com/en-us/data/aa937724.aspx
2.微軟的CSDN文檔(使用JDBC驅動程序):https://msdn.microsoft.com/zh-cn/library/ms378526(v=sql.110).aspx
3.解決數據庫無法登陸以及與示例相關問題解決方案:http://www.2cto.com/database/201405/300620.html
4.百度知道的一個對加載JDBC,相對優質的回答:http://zhidao.baidu.com/link?url=1lCaEE0jxZcbyMQoUcPtkwzCF3-TdhCEUnZUZDdUts2QeqhJ6mKNDNfRCrbigzoe3WjvUPKXUT0O4X8Vau7Yf_
五.最后的聲明
技術的發展很快,軟件的更新速度也很快,所以本文過幾年可能也就不在適用
因此,學會找官網解決問題才是王道。
本文寫於:2015年11月11日










