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,命名实例 swing。错误:“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

检查您是否可以从运行代码的机器 ping sql 服务器。

如果可以,您可能需要配置 sql server 以允许远程连接,正如您所说,您已经检查了防火墙,我假设实例在标准端口 1433 上运行

另外,检查您是否可以使用 SMSS 从运行代码的机器连接到 sql 服务器。

编辑:

查看您的错误消息,您没有使用标准端口 1433,因为消息说您正在尝试连接到 1434。

确保没有防火墙阻止 UDP 流量到端口 1434

尝试使用 jdbc:sqlserver://localhost:1433 作为您的主机。

于 2017-06-25T18:20:41.177 回答
0

检查您的 url 并确保服务器运行正常,端口号和服务不受防火墙影响。

于 2017-06-25T17:44:21.687 回答