import java.sql.*;
class Test1{
    public static void main(String args[])
    {
        String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=booksys";
        String user ="sa";
        String password = "mayer";
        String sqlStr = "select * from booktest";        try{    //这里的异常处理语句是必需的.否则不能通过编译!    
            Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
            System.out.println( "类实例化成功!" );            Connection con = DriverManager.getConnection(url,user,password);
            System.out.println( "创建连接对像成功!" );            Statement st = con.createStatement();
            System.out.println( "创建Statement成功!" );            ResultSet rs = st.executeQuery(sqlStr);
            System.out.println( "操作数据表成功!" );
            System.out.println( "----------------!");            while(rs.next())
            {
                System.out.print(rs.getString("编号") + "    ");
                System.out.print(rs.getString("书籍名称") + "    ");
                System.out.println(rs.getString("出版社名称"));
            }
            rs.close();
            st.close();
            con.close();
        }
        catch(Exception err){
            err.printStackTrace(System.out);
        }
    }
}
错误提示为:java.sql.SQLException:[Microsoft][SQLServer 2000 Driver for Jdbc] error establising sokcet!
请问这是什么原因呀!
我已经装了sql for jdbc 1.3呀,而且classpath设置一点都没有问题,这点我保证,

解决方案 »

  1.   

    我觉得你的Connection声明的地方不对,应该放在try{}外面,如:
    Connection con = null;
    try
    {
      Connection con = DriverManager.getConnection(url,user,password);}
     
    这样应该就没有问题了。
      

  2.   

    还有问题,你的rs 和 st 声明的地方也不对,也应该放在try{}外面去。
    Connection con = null;
    Statement st = null;
    ResultSet rs = null;
    try
    {
      Connection con = DriverManager.getConnection(url,user,password);
      Statement st = con.createStatement();
      ResultSet rs = st.executeQuery(sqlStr);}
      

  3.   

    应该把try里面的Connection去掉吧!
    Connection con = null;
    Statement st = null;
    ResultSet rs = null;
    try
    {
      con = DriverManager.getConnection(url,user,password);
      Statement st = con.createStatement();
      ResultSet rs = st.executeQuery(sqlStr);}
      

  4.   

    有没有import 驱动包?或设置驱动包的classpath?
      

  5.   

    装SqlServer2000 Sp4和JDBC驱动SP3绝对能解决!