Java 如何设置SQL server连接URL?
我在连接我在电脑中为一个小应用程序创建的SQL Server数据库时遇到问题。服务器名为'INSPIRONN5110-D'。我使用Windows身份验证登录到服务器。已从microsoft下载驱动程序并将其内容复制到program files文件夹,并将路径(C:\program files\microsoft JDBC driver 4.0 for SQL Server\sqljdbc_4.0\chs\sqljdbc4.jar)添加到path和classpath变量(不确定要使用哪一个)中,但仍会出现此错误Java 如何设置SQL server连接URL?,java,sql-server,jdbc,Java,Sql Server,Jdbc,我在连接我在电脑中为一个小应用程序创建的SQL Server数据库时遇到问题。服务器名为'INSPIRONN5110-D'。我使用Windows身份验证登录到服务器。已从microsoft下载驱动程序并将其内容复制到program files文件夹,并将路径(C:\program files\microsoft JDBC driver 4.0 for SQL Server\sqljdbc_4.0\chs\sqljdbc4.jar)添加到path和classpath变量(不确定要使用哪一个)中,但
Creating Connection.
com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host INSPIRONN5110-D, port 1433 has failed. Error: "connect timed out. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall.".
.....
下面是我尝试连接到数据库的方法
private Connection connectToDB() {
String connectionUrl = "jdbc:sqlserver://INSPIRONN5110-D; databaseName=MemoryHelp;";
Connection con = null;
try{
// Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
System.out.println("Creating Connection.");
con = DriverManager.getConnection(connectionUrl);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
// } catch (ClassNotFoundException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
} finally{
System.out.println("Connection created.");
}
return con;
}
已尝试将连接url更改为“jdbc:sqlserver://localhost;databaseName=MemoryHelp;”
现在获取此错误:
Creating Connection.
com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host localhost, port 1433 has failed. Error: "Connection refused: connect. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall.".
....
终于解决了。必须转到SQL Server Configuration Manager并启用到服务器的tcp/ip连接,然后将sqljdbc_auth.dll文件从驱动程序文件夹复制到system32文件夹,使用以下连接URL可以使其工作:
String connectionUrl = "jdbc:sqlserver://localhost;databaseName=MemoryHelp;integratedSecurity=true";
您没有提供服务器的ip或主机名,也没有提供端口。您需要提供这些,以便连接到服务器 在您的情况下,如果服务器与应用程序位于同一台计算机上。。那么应该是: jdbc:sqlserver://localhost:3306
端口3306只是我假设您正在使用的默认端口,这取决于您托管服务器的w.e端口。使用您尝试过的内容和错误编辑您的帖子,以便人们可以帮助尝试,立即获取此错误:com.microsoft.sqlserver.jdbc.SQLServerException:端口号3306/INSPIRONN5110-D无效。如何知道正在使用哪个端口?请尝试从中删除/INSPIRONN5110-D。。。我以为这是数据库的名称,而不是服务器的名称,所以现在将此作为第一个错误行:com.microsoft.sqlserver.jdbc.SQLServerException:与主机localhost、端口3306的TCP/IP连接失败。错误:“连接被拒绝:连接。请验证连接属性。确保SQL Server实例正在主机上运行,并且在端口上接受TCP/IP连接。确保到端口的TCP连接未被防火墙阻止。”。您需要为其提供用户名和passowrd,默认情况下为其根目录和“”。。。检查此项以确定这是JDBC问题还是一般网络问题,请尝试使用完全相同的主机名、端口、用户名和密码通过SQLServerManagementStudio连接到服务器。如果失败,那么您的问题与JDBC无关。如上所述,我使用windows帐户通过SQL server Management Studio连接到服务器(如果有帮助,我使用的是windows 8.1)。我想在这里也一样。我在管理工作室没有问题。