您的位置:程序门 -> java -> j2ee / ejb / jms



java连接局域网内的sql server2005数据库


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


java连接局域网内的sql server2005数据库[已结贴,结贴人:xiaohuasuper]
发表于:2008-01-26 20:43:51 楼主
寒假,我们团队在做一个c/s系统,基于jee的.我是这个团队的负责人之一.
现在碰到一个问题:
我们想,在一台电脑上装一个web服务器,一个sql   server2005,一个cvs源代码控制.
web服务器和cvs已经成功.现在的问题是团队不能访问sql   server2005(已经打了sp2补丁),我们用的是
局域网,sql   server2005   standard,系统是windows   xp   home.
这台电脑能连接到sql   server   2005(驱动器用sqljdbc_1.2).但其余电脑不能.
局域网用的代码如下:
string   db="collegestudentsystem";
string   user="sa";
string   password="xiaohuasuper";
string   url="jdbc:sqlserver://192.168.68.19:1433;databasename="+db+";user="+user+";password="+password;
try{
connection   con=drivermanager.getconnection(url);
system.out.println("connected   succeed!");
}
catch(sqlexception   e){
e.printstacktrace();
}
192.168.68.19是这台电脑的ip.
出现的错误为:
com.microsoft.sqlserver.jdbc.sqlserverexception:   tds   预登录响应不完整。目标服务器必须是   sql   server   2000   或更高版本。
at   com.microsoft.sqlserver.jdbc.sqlserverexception.makefromdrivererror(unknown   source)
at   com.microsoft.sqlserver.jdbc.sqlserverconnection.prelogin(unknown   source)
at   com.microsoft.sqlserver.jdbc.sqlserverconnection.connecthelper(unknown   source)
at   com.microsoft.sqlserver.jdbc.sqlserverconnection.loginwithoutfailover(unknown   source)
at   com.microsoft.sqlserver.jdbc.sqlserverconnection.connect(unknown   source)
at   com.microsoft.sqlserver.jdbc.sqlserverdriver.connect(unknown   source)
at   java.sql.drivermanager.getconnection(unknown   source)
at   java.sql.drivermanager.getconnection(unknown   source)
at   com.zhuimeng.test.zhuimeng.main(zhuimeng.java:27)
网上搜了很久,不能得到有较的解决方法.
我有已下猜测:
1.sql   server2005   standard是不是不支持外部防问?
2.客户端是否需要装什么东西?我认为客户端只要能正常运行java代码就行了.
时间很紧,希望csdn的高手们给予解答.
发表于:2008-01-26 21:10:311楼 得分:80
你用telnet   到   192.168.68.19:1433   能用吗?
如果不能用,则是防火墙的问题,

如果能用,则在本地用企业管理器注册192.168.68.19,看能否管理
如果不能,依然是   192.168.68.19的问题

如果能,则是你本地jdbc驱动的问题了!   换最新的看看!
发表于:2008-01-26 21:13:432楼 得分:0
sqljdbc_1.2   是哪个版本的驱动啊?

到这里下载最新的驱动吧!  


发表于:2008-01-26 21:15:153楼 得分:0
c:\documents   and   settings\owner> telnet   192.168.68.19:1433
正在连接到192.168.68.19:1433...不能打开到主机的连接,   在端口   23:   连接失败

c:\documents   and   settings\owner> telnet   192.168.68.19:1433
正在连接到192.168.68.19:1433...不能打开到主机的连接,   在端口   23:   连接失败

c:\documents   and   settings\owner> telnet   192.168.68.19
正在连接到192.168.68.19...不能打开到主机的连接,   在端口   23:   连接失败

c:\documents   and   settings\owner>
发表于:2008-01-26 21:15:304楼 得分:0
这里还有些资料,希望对你有帮助
发表于:2008-01-26 21:55:015楼 得分:10
最好不要用微软的驱动,不太稳定。
发表于:2008-01-26 22:12:376楼 得分:10
别写错了,你看你还是登到23口上去,telnet   192.168.68.19   1433
发表于:2008-01-26 22:54:017楼 得分:0
telnet   192.168.68.19   1433后出现一片黑应该是连接上了
发表于:2008-01-27 05:07:528楼 得分:0
按照1楼的,继续测试啊!

在本地用企业管理器注册192.168.68.19,看能否管理  
如果不能,依然是       192.168.68.19的问题  

如果能,则是你本地jdbc驱动的问题了!       换最新的看看!
发表于:2008-01-27 16:32:309楼 得分:0
问题已经解决,问题出在我的队友的2000没升级到sp4.现在工作环境是:
1.其中一台电脑的sql   server   2000作为团队数据库服务器(防火墙必须关掉,用java程序可以连接上,2005可以连接到2000,但反过来不行).
2.tomcat作为web服务器,运行在另一台电脑上.
3.用cvsnt作为源代码控制器.
感谢java2000_net和回复者的帮助,出问题跑不开,http://www.java2000.net/viewthread.jsp?tid=394所分析的.


快速检索

最新资讯
热门点击