package database;import java.sql.*;
import java.util.*;
import java.text.*;
import java.io.*;public class jdbc_sql {
    String conn_str = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=myweb";//---------数据库    String username = "sa";//---------------数据库用户名    String password = "sa";//-------------数据库密码    private Connection conn = null;    private Statement stmt = null;    ResultSet rs = null;    //----------------------数据库链接----------------
    public jdbc_sql()
    {
        try {
            Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
        } catch (java.lang.ClassNotFoundException e) {
            System.err.println("dbclass():" + e.getMessage());
        }
        try {
            conn = DriverManager.getConnection(conn_str, username, password);
        } catch (SQLException ex) {
            System.err.println("dbclass():" + ex.getMessage());
        }
    }    //---------------------数据库查询-----------------
    public ResultSet query(String sql) {
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
        } catch (SQLException ex) {
            System.err.println("query():" + ex.getMessage());
        }
        return rs;
    }
package database;import java.sql.*;/**
 * 
 * 
 * TODO 要更改此生成的类型注释的模板,请转至 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
public class Test {    public static void main(String[] args) {
        try {
            jdbc_sql bean = new jdbc_sql();
            String sql = "select * from aa";
            ResultSet rs = bean.query(sql);
            while (rs.next()) {
                System.out.println(rs.getString(1) + " " + rs.getString(1));            }
            rs.close();
            bean.closeconn();
        } catch (Exception e) {
            e.printStackTrace();
        }    }
}

解决方案 »

  1.   

    报错是dbclass():[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
      

  2.   

    你的操作系统是win2003么,win2003出于安全原因把1433端口屏蔽了, 解决的方法是安装sqlserver sp3,就可以了.
    如果不是win2003,你查看一下你的1433端口是否被屏蔽
      

  3.   

    你的是不是缺少3个压缩包,要实在不行我建议你用ODBC
      

  4.   

    同上.最重要的是你的Port:1433没打开.
      

  5.   

    我用的是windows xp  sqlserver2000的sp3也装了,别人连我的数据库连不上,但是我可以连别人的,没有防火墙。主要报错是dbclass():[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket     底端通信有问题,1433端口是否屏蔽我不知道怎样看,所以我改了端口,还是不行。
      

  6.   

    你去网上搜索"端口扫描 工具"就可以,下载后执行就可以看到端口的使用情况.
    如果改端口,既要改sqlserver的端口,也要改jdbc程序的端口