JDBC连接不上SQL2000的问题

qianhen136 2010-11-02 11:14:16
一直用的SQL2005 ,可是最近换成了SQL2000,但是配置了很久都没连接上。。。

系统环境:Win 7 ,防火墙关闭了的。
开发环境:MyEclipse 7.5 JDK 1.6 JDBC4.jar

刚开始我用的SQl 2005,我用Hibernate和直接写JDBC都能连接到服务器上去。

我换成了SQL 2000后,用查询分析器用.;localhost;IP都能连接上服务,但是我用jdbc就不行了,代码如下:


try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection connection = DriverManager.getConnection("jdbc:sqlserver://192.168.33.49;databaseName=Table;user=sa;password=password" );
return new SQLSession(connection);
}
catch (Exception e)
{
e.printStackTrace();
}

运行结果报错如下:

com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP 连接失败。错误:“Connection refused: connect。请验证连接属性,并检查 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接。”。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:171)


我防火墙是关了的,用URL:jdbc:sqlserver://192.168.33.49:1433都是一样的结果.
十万火急啊。。。
...全文
176 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
lymmingv 2010-11-08
  • 打赏
  • 举报
回复
端口号那个地方用192.168.33.49,1433试试
qianhen136 2010-11-07
  • 打赏
  • 举报
回复
我后来用netstat查看了一下,电脑里面基本就没有监听1433这个端口,然后想着为什么用查询分析器与企业管理器都能找到,想通过查找他们两个的连接端口看一下,但是还是没找到。。。


还是望高手指教一下
EduKit 2010-11-07
  • 打赏
  • 举报
回复
环境变量没设置好,找不到JDBC驱动

在project配置runtime--classpath
qianhen136 2010-11-07
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 claro 的回复:]
帮顶。

能说一下从05转回2K的原因?
[/Quote]

呵呵 ,自己用的是SQL 2005,但是服务器上是SQl2000的,没办法啊。
qianhen136 2010-11-07
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wing7742 的回复:]
貌似 2000 和 2005 的Class.forName("") 有些许差异

很久没用MyE了记不准了
[/Quote]

我看了一下jdbc的文档,forName都是一样的啊。。
如果有空请帮我查找一下。
qianhen136 2010-11-07
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 abuying 的回复:]
试一下 加个express
jdbc:sqlserver:(local)\\SQLEXPRESS;databaseName=Table;user=sa;password=password

jdbc:sqlserver:.\\SQLEXPRESS;databaseName=Table;user=sa;password=password //.\\SQLEXPRESS
[/Quote]

这两个方法我试过了,报的是:
No suitable driver found for jdbc:sqlserver::(local)\\SQLEXPRESS;databaseName=Gardening
claro 2010-11-02
  • 打赏
  • 举报
回复
帮顶。

能说一下从05转回2K的原因?
wing7742 2010-11-02
  • 打赏
  • 举报
回复
貌似 2000 和 2005 的Class.forName("") 有些许差异

很久没用MyE了记不准了
abuying 2010-11-02
  • 打赏
  • 举报
回复
试一下 加个express
jdbc:sqlserver:(local)\\SQLEXPRESS;databaseName=Table;user=sa;password=password

jdbc:sqlserver:.\\SQLEXPRESS;databaseName=Table;user=sa;password=password //.\\SQLEXPRESS
qianhen136 2010-11-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 billpu 的回复:]
你的配置信息和你的报错信息怎么风马牛不相及,编译的问题?

引用楼主 qianhen136 的回复:
DriverManager.getConnection("jdbc:sqlserver://192.168.33.49;databaseName=Table;user=sa;
com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 143……
[/Quote]

怎么个风马牛不相及哦?就是用JDBC的时候找不到服务器啊。。
billpu 2010-11-02
  • 打赏
  • 举报
回复
你的配置信息和你的报错信息怎么风马牛不相及,编译的问题?
[Quote=引用楼主 qianhen136 的回复:]
DriverManager.getConnection("jdbc:sqlserver://192.168.33.49;databaseName=Table;user=sa;
com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP 连接失败。
[/Quote]

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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