我在尝试连接到我的sqlserver数据库时遇到了困难。 我正在使用的数据库是SQL-Server 2008。 我正在使用的驱动程序是我在这里的那个:Microsoft download page
我使用以下代码:
public static final String URL_FORMAT = "jdbc:sqlserver://%s:%s;DatabaseName=%s";
public static void main(String[] args) throws SQLException, ClassNotFoundException {
String connectionURL = String.format(URL_FORMAT, "10.31.3.3", 1433, "EPowerTest");
System.out.println("connecting to: "+connectionURL);
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection connection = DriverManager.getConnection(connectionURL, "sa", "*************");
if (connection == null) {
System.out.println("no connection was established");
} else {
System.out.println("succesfully connected");
}
}
现在这段代码在我的开发者机器上运行,我得到以下结果:
连接到:jdbc:sqlserver:// 。 。 。 :1433; DatabaseName = ** ****
成功连接
但是当我在我的开发者机器上运行这段代码时,它打印出以下内容:
连接到:jdbc:sqlserver://10.31.3.3:1433; DatabaseName = *******
并且第二行永远不会被打印,因为看起来DriverManager.getConnection似乎没有返回。这不是防火墙问题,因为所有三个终端(数据库服务器,开发人员机器和测试机器)都在同一网络上。为什么我的方法没有返回?我错过了一些重要的SQLServer文件吗?
希望这里有人可以帮我解决这个烦人的问题!