<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    我的Blog我做主^_^

    走向一條通往JAVA的不歸路...

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      64 隨筆 :: 68 文章 :: 77 評論 :: 0 Trackbacks

    ?

    一次在重裝系統并重新搭建 JAVA 運行環境后,為了測試運行環境是否搭建好,寫了一個非常簡單的 JDBC 程序測試數據庫連接。

    IDE Eclipse3.2

    DB SQLServer2000

    Driver MS 的官方驅動: msbase.jar 、 mssqlserver.jar 、 msutil.jar

    源程序如下:

    文件名: SqlServerTest.java

    package test;

    ?

    import java.sql.*;

    ?

    /**

    ? * @author lpeter SQLServer 連接測試

    ? */

    public class SqlServerTest {

    ??? // 驅動類

    ??? static String driverClass =

    ?????? "com.microsoft.jdbc.sqlserver.SQLServerDriver" ;

    ??? // 連接字符串

    ??? static String url =

    ?????? "jdbc:microsoft:sqlserver://127.0.0.1:1433;dataBaseName=Test" ;

    ??? // 密碼

    ??? static String password = "peter" ;

    ? ?? // 用戶名

    ??? static String username = "peter" ;

    ??? // 待執行的 SQL 語句

    ??? static String sql = "SELECT * FROM Test" ;

    ?

    ??? public static void main(String[] args) {

    ?????? Connection conn = null ;

    ?????? PreparedStatement pstmt = null ;

    ?????? ResultSet rs = null ;

    ?

    ?????? try {

    ?????????? Class.forName( driverClass );

    ?????????? conn = DriverManager.getConnection( url , username , password );

    ?????????? pstmt = conn.prepareStatement( sql );

    ?????????? rs = pstmt.executeQuery();

    ?????????? while (rs.next()) {

    ????????????? System. out .println( "OK." );

    ?????????? }

    ?????????? System. out .println( "OK too." );

    ?????????? rs.close();

    ?????????? pstmt.close();

    ?????????? conn.close();

    ?????? } catch (ClassNotFoundException e) {

    ?????????? System. out .println( " 驅動類沒有找到 ." );

    ?????????? e.printStackTrace();

    ?????? } catch (SQLException e) {

    ?????????? e.printStackTrace();

    ?????? } finally {

    ?????????? if (rs != null ) // 結果集沒有關閉時關閉結果集

    ????????????? try {

    ????????????????? rs.close();

    ????????????? } catch (SQLException e) {

    ????????????????? e.printStackTrace();

    ????????????? }

    ?????????? if (pstmt != null ) // 發送對象沒有關閉時關閉發送對象

    ????????????? try {

    ????????????????? pstmt.close();

    ????????????? } catch (SQLException e) {

    ????????????????? e.printStackTrace();

    ????????????? }

    ?????????? if (conn != null )? // 連接沒有關閉時關閉連接

    ????????????? try {

    ????????????????? conn.close();

    ????????????? } catch (SQLException e) {

    ????????????????? e.printStackTrace();

    ????????????? }

    ?????? }

    ?

    ??? }

    }

    執行這段程序時,出現錯誤:

    java.sql.SQLException : [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing 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.<init>(Unknown Source)

    ??? at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)

    ??? at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)

    ??? 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 test.SqlServerTest.main( SqlServerTest.java:29 )

    ?

    出現了這個錯誤,我馬上想到連接字符串有問題。可在網上找了好幾個版本都是這樣。

    后來由于某種偶然原因,我知道了 SQLServer 可以設置查看端口號。步驟如下:

    1.? 打開企業管理器,依次在控制臺根目錄 ->Microsoft SQL Servers->SQL Server 組,列出一部分數據庫服務器。

    2.? 右擊我們要連接的數據庫服務器,選擇屬性,在常規選項卡點擊網絡配置彈出新窗口。

    3.? 在啟用的協議區域我們選擇 TCP/IP ,點擊屬性按鈕,彈出新窗口。在這個窗口有網絡協議默認值設置,我在這里看到我的默認端口是: 4067 。因面在使用 1433 連接數據庫時出錯。

    ?

    把端口號修改為 4067 即修改:

    static String url =

    ?????? "jdbc:microsoft:sqlserver://127.0.0.1:1433;dataBaseName=Test" ;

    為:

    static String url =

    ?????? "jdbc:microsoft:sqlserver://127.0.0.1:4067;dataBaseName=Test" ;

    后,執行程序,輸出: OK too.

    ?

    測試連接成功。


    引自:http://www.tkk7.com/lpeter/archive/2006/12.html
                                                 14:44:38 10-22-2006

    ?



    posted on 2006-12-22 14:47 java_蟈蟈 閱讀(544) 評論(0)  編輯  收藏 所屬分類: 數據庫
    主站蜘蛛池模板: 亚洲另类春色国产精品| 一级毛片aa高清免费观看| 国产成人高清精品免费鸭子| 特级毛片A级毛片100免费播放| 国产gv天堂亚洲国产gv刚刚碰 | 一级毛片免费观看不收费| 国产亚洲精久久久久久无码| 亚欧在线精品免费观看一区| 羞羞漫画小舞被黄漫免费| 亚洲国产AV无码专区亚洲AV| 国内免费高清在线观看| 在线免费视频你懂的| 亚洲婷婷第一狠人综合精品| 亚洲人成色77777在线观看大| 亚洲成人免费网址| 一级特黄特色的免费大片视频| 亚洲国产精品一区二区久| 亚洲七七久久精品中文国产| 免费在线观看h片| 男女一进一出抽搐免费视频| 国产亚洲中文日本不卡二区| 亚洲精品成人片在线播放| 免费毛片在线视频| 99久久国产免费中文无字幕| 爱情岛亚洲论坛在线观看 | 国产又粗又长又硬免费视频| 免费毛片a线观看| 国产亚洲成在线播放va| 亚洲欧洲日本精品| 在线观看午夜亚洲一区| 日韩在线免费播放| 国产免费一区二区三区| 日本三级在线观看免费| 一个人看的免费视频www在线高清动漫| 国产成人精品日本亚洲18图 | 免费高清A级毛片在线播放| 亚洲成人黄色网址| 水蜜桃亚洲一二三四在线| 免费播放春色aⅴ视频| 女人被弄到高潮的免费视频| 57pao一国产成视频永久免费|