java - 我想从 Eclipse 连接到 SSMS 数据库,但它抛出 SQLserverException
问题描述
我想从 Eclipse 连接到 SSMS 数据库。当编译器到达DriverManager.getConnection(url)
行时它会抛出错误。我也启用了 TCP/IP,但它给出了错误。
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
System.out.println("driver loaded successfully");
connection= DriverManager.getConnection( "jdbc:sqlserver://localhost\\MSSQLSERVER;user=sa;password=coder182");
System.out.println("Connection created successfully");
connection.setAutoCommit( autoCommit);
statement=connection.createStatement();
String query ="insert into User_information(name, card_no,amount)" + "values ('"+name+"','"+card_no+"', '"+amount+"');";
statement.executeUpdate(query);
System.out.println(query);
}catch(Throwable th){
th.printStackTrace();
}
}
错误:
com.microsoft.sqlserver.jdbc.SQLServerException:与主机 localhost 的连接,命名实例 mssqlserver 失败。错误:“java.net.SocketTimeoutException:接收超时”。验证服务器和实例名称,并检查没有防火墙阻止到端口 1434 的 UDP 流量。对于 SQL Server 2005 或更高版本,验证 SQL Server Browser 服务是否正在主机上运行。
我想将它连接到数据库。
解决方案
- 打开 SQL Server 配置管理器
- SQL Server 网络配置
- MSSQLSERVER 协议
- TCP/IP(必须已经启用或启用)
- (双击)
- IP 地址
- 向下滚动到 IPALL
- 输入端口号 1433 或 1434 并将动态端口留空并应用设置并重新启动服务
并且您必须指定要连接的 databaseName
"jdbc:sqlserver://localhost;instance=MSSQLSERVER;databaseName=name_of_database;user=sa;password=your_password;"
如果问题已解决,则将答案标记为已接受
推荐阅读
- javascript - 如何将 div 滚动到顶部或左侧以查看动态创建的元素?
- html - 如何让信息表和图像在同一行对齐
- java - 如何在 Wildfly 的 managedConnectionReconnected() 中修复 Unchecked throwable?
- c++ - boost beast Websocket 多请求服务器/客户端并不是真正的多
- python - 使用 Python 获取 Outlook 日历
- python - 将行从一列移动到另一列以及 pandas DataFrame 中的相应值
- javascript - 如何自定义单选按钮和复选框
- reactjs - ReactJS 中的正则表达式时间字段验证失败
- python - ConnectN 检查对角线获胜
- raspberry-pi - 使用 yocto 的树莓派 u-boot 中的额外命令