java通過JDBC鏈接SQLServer2012

文章轉自:https://blog.csdn.net/stewen_001/article/details/19553173

下面請一字一句地看,一遍就設置成功,比你設置幾十遍失敗,費時會少得多。

 

首先,在連接數據庫之前必須保證SQL Server 2012是採用SQL Server身份驗證方式而不是windows身份驗證方式。如果在安裝時選用了後者,則重新設置如下:

http://blog.163.com/jackie_howe/blog/static/19949134720122261121214/

 

當你保證SQL Server 2012是採用SQL Server身份驗證方式後,開始如下配置:

一、因爲SQL Server 2012裝好後,默認協議是沒有開啓的,所以要打開SQL Server配置管理器中開啓:

1、安裝好SQL Server 2012後,運行 開始 → 所有程序 → Microsoft SQL Server 2012 → 配置工具 →SQL Server配置管理器,如下圖1所示:


圖1

2、打開的窗口如下圖所示。在左邊欄找到 SQL Server網絡配置選項,點開它的小箭頭,會看到“【你的數據庫名】的協議” (圖中是ERIC2012的協議),選中它,看右邊欄。如下圖2所示:

 

圖2

(1)如果Named Pipes 未啓用,則右鍵→啓用

(2)右鍵單擊 TCP/IP,選擇 啓用

(3)雙擊TCP/IP(右鍵→屬性),在彈出的窗口中選擇 “IP地址” 選項卡,將IP1和IP10的【IP地址】設爲127.0.0.1,並將所有【IPx】的【已啓用】設爲是。接着,拖動下拉條到最下方,將 IPAll 中的【TCP端口】設成 【1433】,其餘不變。如下圖3和圖4所示:

 

圖3

 

圖4

3、重新啓動計算機。

4、接下來使用telnet命令測試1433端口是否打開。首先要保證telnet服務開啓。開啓win7 telnet的方法在這裏:

http://blog.163.com/jackie_howe/blog/static/199491347201251723939691/

 

5、完成上一步後。開始菜單 → 運行cmd → 輸入:telnet 127.0.0.1 1433,(注意telnet與127之間有空格,1與1433之間有空格)。如下圖:

 

圖5

6、若提示“不能打開到主機的連接,在端口 1433: 連接失敗”,則說明1433端口沒有打開,需要重新進行以上配置。若連接成功,顯示如圖6所示:

 

圖6

 

二、環境變量CLASSPATH配置:

1、下載Microsoft JDBC Driver 4.0 for SQL Server

在這裏下載:http://www.microsoft.com/zh-cn/download/details.aspx?id=11774

4.0版本支持的 SQL Server有:

Microsoft®SQL Server® 2012

Microsoft®SQL Server® 2008 R2

Microsoft®SQL Server® 2008

Microsoft®SQL Server® 2005

Microsoft®SQL Azure

 

下載sqljdbc_4.0.2206.100_chs.tar.gz(2.2M),解壓文件,得到sqljdbc.jar和sqljdbc4.jar。如果你使用的是jre1.7版本,則忽略sqljdbc.jar(因爲它用不了,而且如果和sqljdbc4.jar一起用會出錯),只留下sqljdbc4.jar。

以下設置均針對jre1.7版本(1.7以下應該也適用):

在D盤新建一個文件夾,命名爲sqljdbc4,將sqljdbc4.jar複製一個進去。

 

圖7

2、右擊 我的電腦 → 屬性 → 高級系統設置(高級) → 環境變量,在系統變量中雙擊CLASSPATH變量(或選中CLASSPATH後 → 編輯),在最後面追加 “;D:\sqljdbc4 \sqljdbc4.jar” (注意最前面有個 ; )若不存在CLASSPATH,就新建CLASSPATH變量,並且將其值設爲“D:\sqljdbc4 \sqljdbc4.jar”。如圖8所示:

 

圖8

3、連續點擊 確定 以退出環境變量配置。

4、接下來的工作非常重要(因爲沒做我糾結了幾天沒成功)!!

有幾個地方需要注意:

(1)我們需要將sqljdbc4.jar類庫文件拷貝到D:\Program Files\Java\jdk1.7.0\jre\lib\ext目錄下。(看你安裝在哪個盤,如果是C盤,則最前面的D改爲C,下同)

 

(2)我們需要將sqljdbc4.jar類庫文件拷貝到D:\Program Files\Java\jre7\lib\ext目錄下

 

 最好是,只要是jre文件夾,都複製一個sqljdbc4.jar到jre7\lib\ext裏去!!

 

(3)如果是使用Tomcat做服務器(我使用的是Tomcat7),那麼我們需要將sqljdbc4.jar類庫文件拷貝到C:\apache-tomcat-7.0.11\lib目錄下。

 

(4)如果是使用Tomcat做服務器,那麼我們需要將sqljdbc4.jar類庫文件拷貝到D:\apache-tomcat-7.0.11\webapps\gaofei\WEB-INF\lib目錄下(gaofei目錄是我的應用,這個路徑相信你會看明白)

 

注意,只有sqljdbc4.jar !!如果把sqljdbc.jar和sqljdbc4.jar都拷在一起的話,這樣就算你全都做對了,也會持續出現有“此驅動程序不支持JRE1.7,請使用支持JDBC4.0的sqljdbc4.jar的類庫”的問題。因爲jdk默認地選擇了sqljdbc.jar(前面我已經提到,只留下sqljdbc4.jar)。

 

三、使用Eclipse測試連接SQL Server 2012數據庫:

1、打開SQL Server 2012,在其中新建數據庫 Test,然後退出SQL Server 2012。

2、運行Eclipse,新建一個Java Project 名爲 Test。

3、右單擊src,依次選擇 Build Path → Configure Build Path,在打開的窗口的右邊選擇 Libraries標籤,然後單擊 Add External JARs,找到 sqljdbc4.jar 文件並打開,然後單擊 OK 完成構建路徑的配置。如圖9(我是漢化版的):

 

圖9

4、在Test中新建包pkg,在pkg中新建一個類Main,在其中輸入代碼如下:

packagepkg;

importjava.sql.*;

 

publicclass Main {

 publicstatic void main(String [] args)

 {

  StringdriverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";

  StringdbURL="jdbc:sqlserver://localhost:1433;DatabaseName=你的數據庫名";

  String userName="填寫你的用戶名,我的是sa";

  String userPwd="填寫你的密碼";

  try

  {

   Class.forName(driverName);

   ConnectiondbConn=DriverManager.getConnection(dbURL,userName,userPwd);

    System.out.println("連接數據庫成功");

  }

  catch(Exception e)

  {

   e.printStackTrace();

   System.out.print("連接失敗");

  }    

 }

}

 

溫馨提示:如果要對數據庫中的某個表進行操作,需要像這樣子做:String sql = "SELECT*  FROM [數據庫名].[dbo].[表名] where xxx "; 例如String sql = "SELECT*  FROM [metro].[dbo].[4] wherexxx" 。注意,中括號是必要的,不能去掉。

 

5、點擊右鍵,選擇run as——>Java Application, 控制檯出現下圖則連接成功!

 

圖10

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章