<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)  編輯  收藏 所屬分類: 數據庫
    主站蜘蛛池模板: 国产免费小视频在线观看| 国产精品入口麻豆免费观看| 日本一道高清不卡免费| 亚洲一卡一卡二新区无人区| 国国内清清草原免费视频99| 亚洲Av高清一区二区三区| 亚洲欧洲免费无码| 亚洲日本在线电影| 国产在线19禁免费观看国产| 国产午夜亚洲精品不卡| 亚洲女同成人AⅤ人片在线观看| a在线视频免费观看在线视频三区| 中文字幕无码精品亚洲资源网| 18禁黄网站禁片免费观看不卡| 久久夜色精品国产嚕嚕亚洲av| 91香蕉国产线在线观看免费| 91午夜精品亚洲一区二区三区| 91免费国产在线观看| 一本色道久久88亚洲精品综合| 国产黄色片在线免费观看| 欧洲精品码一区二区三区免费看| 老司机亚洲精品影视www| 免费人成在线观看网站品爱网 | 久久久精品免费国产四虎| 91情国产l精品国产亚洲区| 久久国内免费视频| 国产成人人综合亚洲欧美丁香花 | 亚洲精品伊人久久久久| 国产无遮挡色视频免费视频| 免费在线观看一区| 亚洲av无码一区二区乱子伦as| 黄瓜视频影院在线观看免费| 国产亚洲精品第一综合| 亚洲国产精品一区二区久久hs | 又粗又大又猛又爽免费视频| 中文日本免费高清| 亚洲va在线va天堂va手机| 免费一看一级毛片人| 久久w5ww成w人免费| 国产亚洲视频在线观看网址| 久久夜色精品国产噜噜噜亚洲AV |