我想连接到sql server express。 我下载了this驱动程序。 我阅读了帮助文件,这是我的代码:
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String connectionUrl = "jdbc:sqlserver://localhost;database=ActorsDb;integratedSecurity=true;";
Connection con = DriverManager.getConnection(connectionUrl);
PreparedStatement st = con.prepareStatement("INSERT INTO Actors(FirstName,LastName,Age) VALUES(?,?,?)");
st.setString(1, "Robert");
st.setString(2, "de Niro");
st.setInt(3,45);
st.executeUpdate();
con.close();
}
catch (SQLException | ClassNotFoundException e)
{
e.printStackTrace();
}
我得到了这个例外: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配置管理器并启用了TCP / IP
我去了IP地址,IP1并设置了属性
主动:是的;启用:是; TCP动态端口:[空]; TCP端口:1433
我缺少什么提示? 感谢。
答案 0 :(得分:0)
检查SQL Server服务是否正在运行,并检查防病毒等程序是否阻止了连接。如果是,请禁用它们或向该连接添加例外。
答案 1 :(得分:0)
您在JDBC URL中使用localhost,请尝试使用您在SSCM中描述的“IP1”的IP地址。或者,验证SSCM是否配置为侦听localhost:1433。
答案 2 :(得分:0)
问题解决了。我不得不在工作目录中复制sqljdbc_auth.dll。