小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

使用JDBC訪問SQLServer 2005

 冷刃寒冰 2010-12-15

萬惡的畢業(yè)設(shè)計要用到J2EE做B/S/S架構(gòu)的系統(tǒng),本來導(dǎo)師說著要用Oracle數(shù)據(jù)庫來著,我覺得Oracle不如SQLServer簡單易用,就換了SQLServer 2005 。
記得以前做數(shù)據(jù)庫的課程設(shè)計時,想用SQLServer來著,但用JDBC怎么都連不上,后來放棄了SQLServer選用了MySQL。現(xiàn)在又是同樣的問題,在java程序里使用JDBC總是建立連接失敗,經(jīng)過一段時間的搜尋,找到了解決方法,貼出來給廣大遇到同樣問題的同胞。

1.去下載一個SQLServer用的JDBC驅(qū)動。直接去微軟下載就行,下載下來是一個exe文件,運行那個exe把文件解壓到隨便一個文件夾,取里面的sqljdbc4.jar和sqljdbc.jar備用。

2.配置SQLServer 2005 。在SQLServer 2005中,默認(rèn)不開啟TCP/IP協(xié)議,此步主要是開啟協(xié)議并使SQLServer接受遠(yuǎn)程訪問。具體步驟如下:
(1)打開SQLServer配置管理器(SQLServer Configuration Manager),在配置管理器重轉(zhuǎn)到SQL Server 2005 網(wǎng)絡(luò)配置(SQL Server 2005 Network Configuration)下面的SQLEXPRESS協(xié)議(Protocols for SQLEXPRESS)。

image

(2)雙擊TCP/IP那一項打開TCP/IP屬性。將”已啟用(Enable)”那一項置為“是”。切換到“IP 地址”選項卡,將“IP ALL”中的“TCP 端口(TCP Port)”設(shè)置為1433,然后確定。


(3)打開SQLServer 外圍應(yīng)用配置器(SQLServer Surface Area Configuration),然后打開“服務(wù)和連接的外圍應(yīng)用配置器”,轉(zhuǎn)到SQLEXPRESS->Database Engine->遠(yuǎn)程連接,選擇“本地鏈接和遠(yuǎn)程連接”下面的“僅使用TCP/IP”或者“同時使用TCP/IP和named pipes”,這里我選擇了前者,然后應(yīng)用,確定。

image

(4)重新啟動SQLServer服務(wù)。

3.測試連接。會的同學(xué)請?zhí)^~~
(1)在SQLServer Management Studio Express中建立數(shù)據(jù)庫testDB(名字隨便起,數(shù)據(jù)表也隨便),在testDB中建表
CREATE TABLE user
(
ID bigint NOT NULL,
Name varchar(20) NOT NULL,
Email varchar(50) NULL
)
然后隨便往表里加幾條數(shù)據(jù)。
(2)建個java application工程(我用的eclipse,其他IDE雷同),把SQLServer驅(qū)動導(dǎo)入工程,注意,如果你使用的JDK6,那么導(dǎo)入sqljdbc4.jar,如果是低版本的JDK導(dǎo)入sqljdbc.jar,不要弄錯,否則連接時會報錯。
(3)使用JDBC訪問SQLServer的測試程序代碼。

[Copy to clipboard]View Code JAVA
1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            17
            18
            19
            20
            21
            22
            23
            24
            25
            26
            27
            28
            29
            30
            31
            32
            33
            34
            35
            36
            37
            38
            39
            40
            41
            42
            43
            44
            45
            46
            47
            48
            49
            50
            51
            52
            53
            54
            55
            56
            57
            58
            59
            60
            61
            62
            63
            64
            65
            66
            
package jdbc;
             
            import java.sql.Connection;
            import java.sql.DriverManager;
            import java.sql.ResultSet;
            import java.sql.SQLException;
            import java.sql.Statement;
             
            public class Test {
            private Connection conn = null;
             
            public Test() {
            super();
            }
             
            public void getConnection() {
            try {
            Class
            .forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
            .newInstance();
            String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=testDB";
            String USER = "sa"; // 根據(jù)你自己設(shè)置的數(shù)據(jù)庫連接用戶進(jìn)行設(shè)置
            String PASSWORD = "123"; // 根據(jù)你自己設(shè)置的數(shù)據(jù)庫連接密碼進(jìn)行設(shè)置
            conn = DriverManager.getConnection(URL, USER, PASSWORD);
            } catch (java.lang.ClassNotFoundException ce) {
            System.out.println("Get Connection error:");
            ce.printStackTrace();
            } catch (java.sql.SQLException se) {
            System.out.println("Get Connection error:");
            se.printStackTrace();
            } catch (Exception e) {
            System.out.println("Get Connection error:");
            e.printStackTrace();
            }
            }
             
            public void testConnection() {
            if (conn == null)
            this.getConnection();
            try {
            String sql = "SELECT * FROM user";
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery(sql);
            while (rs.next()) {
            System.out.print(rs.getString("ID")+" ");
            System.out.print(rs.getString("Name")+" ");
            System.out.println(rs.getString("Email"));
            }
            rs.close();
            stmt.close();
            } catch (SQLException e) {
            System.out.println(e.getMessage());
            e.printStackTrace();
            } finally {
            if (conn != null)
            try {
            conn.close();
            } catch (SQLException e) {
            }
            }
            }
            public static void main(String[] args) {
            Test bean = new Test();
            bean.testConnection();
            }
            }

(4)運行程序,沒啥意外的話應(yīng)該就OK了。連接代碼與SQLServer2000的有所不同。這兩句可以記下來備用~
Class.forName(”com.microsoft.sqlserver.jdbc.SQLServerDriver”).newInstance();
String URL = “jdbc:sqlserver://localhost:1433;DatabaseName=數(shù)據(jù)庫名稱”;

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多