SQLServer JDBC sp2 连接错误:Error establishing socket. 来者有分!

疯癫行者 2004-03-22 10:08:53
SQLServer JDBC sp2 连接错误:Error establishing socket.

环境:
windowsXP
sql server 2000 personal edition english version with sp3

代码:

public class SQLServerConnect{
public static void main(String[] args){
try{
new com.microsoft.jdbc.sqlserver.SQLServerDriver();
String sConn = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs;User=sa;Password=sa";
Connection conn = DriverManager.getConnection(sConn);

Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from authors");
while(rs.next()){
System.out.println(rs.getString("au_id"));
}catch(SQLException ex){
ex.printStackTrace();
}
}
}
...全文
120 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaray 2004-04-07
  • 打赏
  • 举报
回复
new com.microsoft.jdbc.sqlserver.SQLServerDriver();
建议还是不要直接用new来注册驱动程序,那样可能造成同一个类的重复注册.
这样可能造成许多未知错误.

用下面的可能会好些:
String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
Class.forName(driver).newInstance();
jonathan_yun 2004-04-06
  • 打赏
  • 举报
回复
试一试装一下SP4补丁
或者要末就可能是
软件之间的冲突
或者sql server 2000
的版本问题
jwd 2004-04-06
  • 打赏
  • 举报
回复
进"客户端网络实用工具"看看是否用了tcp/ip连接.
疯癫行者 2004-03-23
  • 打赏
  • 举报
回复
我用查询分析器连到sqlserver没有问题,用c#做的程序连上也没有问题,用jdbc-odbc桥连接也没有问题,唯独使用微软的jdbc驱动有问题。

并且察看驱动程序附带的说明(部分内容如下)后,发现编号为1026189的bug已经修复了,但是却仍然出现。

MSfixes.txt
Microsoft SQL Server 2000 Driver for JDBC
Service Pack 2
Version 2.2.0037
August 2003


Modifications from Beta 1 to Beta 2, December 2001 to February 2002

Issue # | Description of Issue

1025718 | Statement.setQueryTimeout() is not supported, but
Statement.getQueryTimeout() returns an error.

1026189 | java.sql.SQLException: [Microsoft][SQLServer JDBC
Driver]Error establishing socket.

……

那位高手能解?
WAPQQ 2004-03-23
  • 打赏
  • 举报
回复
1433
lkenshin 2004-03-23
  • 打赏
  • 举报
回复
要不就是数据库服务器没开起来
数据库服务器端口读不到
nm_2j 2004-03-23
  • 打赏
  • 举报
回复
有可能是防火墙禁止了1433端口,看看你是否启动了防火墙。关掉再试试。
wwlzlk 2004-03-23
  • 打赏
  • 举报
回复
我也认为是通讯问题,重装sqlserver试试
疯癫行者 2004-03-23
  • 打赏
  • 举报
回复
to publicshj(public):

这个类是可以单独执行的,不用放在web环境中。
wafd 2004-03-23
  • 打赏
  • 举报
回复
从你的错误看,应该时网络端口有问题。
publicshj 2004-03-23
  • 打赏
  • 举报
回复
你的这个文件是不是一个web开发中的一个文件啊?
如果是
看看是不是有专门的数据库配置文件
有可能是配置文件和你的程序调用不符合
疯癫行者 2004-03-23
  • 打赏
  • 举报
回复
这是最新版的驱动程序。
微软公司的网站上提供两个版本的驱动程序,jdbc driver sp1和sp2,我都试过,不行。

除了微软的驱动程序,还能换别的什么驱动程序?我想不出来。我想如果访问sqlserver最好是用微软的驱动程序。
biosun 2004-03-23
  • 打赏
  • 举报
回复
应该是JDBC驱动程序版本的问题!
yaray 2004-03-23
  • 打赏
  • 举报
回复
换驱动程序
疯癫行者 2004-03-23
  • 打赏
  • 举报
回复
另外,服务肯定起来了,端口也是1433,没有防火墙。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧