java 连接数据库 sqlserver2000 急待解决!!!!

importjava.sql.*;publicclasscoffees{publicstaticvoidmain(Stringargs[]){try{System.out... import java.sql.*;
public class coffees{
public static void main(String args[]){
try
{ System.out.println("aaaaaaaaaaaaaaaa");
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
System.out.println("aaaaaaaaaaaaaaaa");
String url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=pubs";

String user="sa";
String password="";
Connection conn=DriverManager.getConnection(url,user,password);
System.out.println("aaaaaaaaaaaaaaaa");
Statement stm=conn.createStatement();
System.out.println("aaaaaaaaaaaaaaaa");
String sql="select * from sales";
ResultSet rs =stm.executeQuery(sql);
while(rs.next()){
System.out.println(rs.getString(1));
}
}
catch (Exception e)
{
e.printStackTrace();
}

}
}

执行结果:
aaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaa
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establis
hing socket.
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source
)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)

at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Sou
rce)
at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown S
ource)
at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(DriverManager.java:525)
at java.sql.DriverManager.getConnection(DriverManager.java:171)
at coffees.main(coffees.java:13)
Press any key to continue...

求哪位大侠帮个忙.很急的,谢谢!
轻薄的假像 这位大侠,我的SQLSERVER SP2补丁已经安装完拉,你看还可能是哪有问题那???谢谢拉!

谢谢三位为我排忧解难,你们的方法不同程度的帮助了我,我都不知道该把分加给谁拉,这里先谢谢你们拉!
展开
 我来答
百度网友c547160
2006-06-12 · TA获得超过1377个赞
知道小有建树答主
回答量:2447
采纳率:0%
帮助的人:2094万
展开全部
1,通过url连接的时候指定的服务器名称或者服务器地址不正确,这一点你可以通过ping来验证。
2,指定的服务器上的sql server的服务没有启动,你可以通过sql server的查询工具来验证这个问题。
3,指定端口错误,sql server的默认端口是1433。
4,sql server没有提供tcp/ip的服务,你可以通过sql server的管理工具来查看这个问题。

5,如果你的系统是 windows XP 或者 Windows 2003,那么你的sql server一定要升级到sp3以上.

一般来说,第五个问题的可能性最大,我就出问题在这个上,郁闷了很久,解决了如上问题,一般就不会出现连接问题了。
Storm代理
2023-07-25 广告
StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto... 点击进入详情页
本回答由Storm代理提供
轻薄的假像
2006-06-12 · TA获得超过390个赞
知道小有建树答主
回答量:368
采纳率:0%
帮助的人:0
展开全部
socket错误一般是没有打SQLSERVER SP2以上的补丁所导致的

我认真的看了一下你的代码,代码和连接数据库的语句是没有问题的

这个错误的解决方法就是,你将数据库关闭,喝点咖啡,看会电视或做点其他事情,过上半个小时左右就可以恢复了,以前我也是这么解决的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我是世间闲客
2006-06-12 · 超过23用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:0
展开全部
1、查看sql server端口对不对,默认的端口地址是1433
或者1、把127.0.0.1改成localhost,或者你的局域网IP试试
2、安装最新JDBC Sql server驱程
3、安装SQL server sp4
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友89570314a
2006-06-12
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
你报的错误是驱动程序的错误 应该是你的驱动没装好
1、安装最新JDBC Sql server驱程 注意配置问题
具体问题解决:
一、下载SQLSERVER2000的jdbc驱动程序。

在微软站点就有这个驱动程序:

Window操作系统

http://www.uncj.com/upload/files/ms_jdbc_setup.exe

http://download.microsoft.com/download/3/0/f/30ff65d3-a84b-4b8a-a570-27366b2271d8/setup.exe

Unix操作系统 Mssqlserver.tar

http://download.microsoft.com/download/3/0/f/30ff65d3-a84b-4b8a-a570-27366b2271d8/mssqlserver.tar

二、安装JDBC

执行ms_jdbc_setup.exe可执行文件,一切只需要点击下一步,至到出现finish按钮,完成安装。

注:

(1) ms_JDBC_setup默认安装路径为:c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC

(2)此版(Version 2.2.0022)本仅支持Microsoft SQL Server 2000 Driver for JDBC

(3)安装目录\lib\下的三个jar文件即是我们要的JDBC驱动核心

msbase.jar

mssqlserver.jar

msutil.jar

三、将以上(3)中指的三个jar文件加入到环境变量中去

classpath:

d:\webserver\lib\msbase.jar;d:\webserver\lib\mssqlserver.jar;d:\webserver\lib\msutil.jar

注:也可以省事的将以上三个文件拷贝至你的jvm机所在的JAVA_HOME\jre\lib\ext目录下,不过不建议这么做。

四、测试

jsp文件:

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.sql.*"%>

<html>

<body>

<%

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=haiguan";

String user="sa";

String password="";

Connection conn= DriverManager.getConnection(url,user,password);

Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);

String sql="select * from xt_user";

ResultSet rs=stmt.executeQuery(sql);

while(rs.next())

{

%>

您的第一个字段内容为:<%=rs.getString(1)%>

您的第二个字段内容为:<%=rs.getString(2)%>

<%

}

%>

<%out.print("数据库操作成功,恭喜你");%>

<%

rs.close();

stmt.close();

conn.close();

%>

</body>

</html>

五、注意事项

1. 要保证你的Sql服务是启动状态

2. 在Sql 的管理器中能够使用sa或其它用户正常登录;(有些人在安装sql时用了nt用户管理模式,这里可能会有一定问题)

3. 第一次配置好环境变量最好能重启一下电脑

4. 注意JVM和DataBase的启动顺序:先启动DataBase,再启动JVM机。

注:在停止Web服务器后,再重启动,中间最好能有10秒以上的间隔。

5. 注意操作系统的网络连通性

A.启动了Tcp/IP服务

B.配置了相关IP地址,有些人机器可能用的是自动分配IP或有配置IP时,但网络不通可能也找不到IP

6. 有些机器在调试明最好能将(四)中的连接地址localhost改成数据库服务器的IP,这也是要注意5的原因
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式