0

こんにちは、私は NetBeans IDE を SqlServer に接続しようとしています。ポートを 1433 に設定してSQL Server Configurtion Manager、私のコードは次のとおりです。

public Db(String login,String password, String dbname) throws SQLException{

        try {
            String url = "jdbc:sqlserver://MJRLGUE\\SWING;databaseName="+dbname+";integratedSecurity = false;";
            Driver monDriver = new SQLServerDriver();
            DriverManager.registerDriver(monDriver);
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            con = DriverManager.getConnection(url,login,password);
            this.connecte = true;
            System.out.println("Succes");
      } catch (ClassNotFoundException e) {
            System.out.println("echec driver "+e.toString());
            this.connecte = false;
        }

    }

およびエラーメッセージ:

もう一度お試しください com.microsoft.sqlserver.jdbc.SQLServerException: ホスト MJRLGUE への接続に失敗しました。エラー: 「java.net.SocketTimeoutException: 受信がタイムアウトしました」。サーバー名とインスタンス名を確認し、ポート 1434 への UDP トラフィックをブロックするファイアウォールがないことを確認します。SQL Server 2005 以降の場合は、SQL Server Browser サービスがホストで実行されていることを確認します。

Exception in thread "main" java.lang.NullPointerException
    at Model.Test.remplirDirecteur(Test.java:79)
    at Main.main(Main.java:17)
C:\Users\Ghassane\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 29 seconds)

SqlServer のインスタンス名:MJRLGUE\SWING データベースに接続するコード:db= new Db("sa","ensak","SuiviMarche");

4

2 に答える 2

1

コードを実行しているマシンから SQL サーバーに ping を実行できることを確認します。

可能であれば、リモート接続を許可するように SQL サーバーを構成する必要があるかもしれません。すでにファイアウォールをチェックしたと述べたので、インスタンスは 1433 の標準ポートで実行されていると想定しました。

また、SMSS を使用して、コードを実行しているマシンから SQL サーバーに接続できることを確認してください。

編集:

エラー メッセージを見ると、1434 に接続しようとしているというメッセージが表示されているため、1433 の標準ポートを使用していません。

ポート 1434 への UDP トラフィックをブロックするファイアウォールがないことを確認してください

jdbc:sqlserver://localhost:1433 をホストとして使用してみてください。

于 2017-06-25T18:20:41.177 に答える