java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.求解决.
已经确认1433端口打开,3个驱动包已正确导入。java代码如下:packagess;importjava.sql.*;publicclasstest1{publicst...
已经确认1433端口打开,3个驱动包已正确导入。java代码如下:
package ss;
import java.sql.*;
public class test1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//定义对象
PreparedStatement ps=null;
Connection ct=null;
ResultSet rs=null;
try {
//初始化对象
//1.加载驱动
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
//2.得到连接
ct=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:8989;DatabaseName=spdb1","sa","heyuewei");
ps=ct.prepareStatement("select userId,username,passwd from users");
//4.如果是增加 删除 修改 executeUpdate() 如果是查询 executQuery()
rs=ps.executeQuery();
//循环的取出
while(rs.next())
{
int userId=rs.getInt(1);
String username=rs.getString(2);
String passwd=rs.getString(3);
System.out.println(userId+" "+username+" "+passwd+" ");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
对一楼的回答补充下,那个程度端口是1433,别看上面的8989,我忘记改过来了。 展开
package ss;
import java.sql.*;
public class test1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//定义对象
PreparedStatement ps=null;
Connection ct=null;
ResultSet rs=null;
try {
//初始化对象
//1.加载驱动
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
//2.得到连接
ct=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:8989;DatabaseName=spdb1","sa","heyuewei");
ps=ct.prepareStatement("select userId,username,passwd from users");
//4.如果是增加 删除 修改 executeUpdate() 如果是查询 executQuery()
rs=ps.executeQuery();
//循环的取出
while(rs.next())
{
int userId=rs.getInt(1);
String username=rs.getString(2);
String passwd=rs.getString(3);
System.out.println(userId+" "+username+" "+passwd+" ");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
对一楼的回答补充下,那个程度端口是1433,别看上面的8989,我忘记改过来了。 展开
5个回答
展开全部
将这一句修改一下试试:
ct=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=spdb1","sa","heyuewei");
改成:
ct=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=spdb1","sa","heyuewei");
我这边测试用:jdbc:sqlserver 可以连接,用jdbc:microsoft:sqlserver 报错。。。
ct=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=spdb1","sa","heyuewei");
改成:
ct=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=spdb1","sa","heyuewei");
我这边测试用:jdbc:sqlserver 可以连接,用jdbc:microsoft:sqlserver 报错。。。
展开全部
服务器地址写计算机名,不要写8989什么的,1433是默认的
追问
我问题补充了,那个是写错了。是1433,不是8989,我笔误!问题继续!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你使用的jdbc驱动程序版本是?
JDK的版本是?
通过你的url,你应该使用sqljdbc.jar这个驱动。
JDK的版本是?
通过你的url,你应该使用sqljdbc.jar这个驱动。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是不是端口被屏蔽或者占用了,你换个端口试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这东西啊,主要是 SQLServer 2000 版本太老,要搞补丁更新才行,我的开始也存在这个问题,后来安装了补丁sp4,再打开分析查询器运行后,java程序就通过了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询