我的代码如下:import java.sql.*; 
class insert { public static void main(String[] args) { String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=news"; try { 
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 
Connection con=DriverManager.getConnection(url,"news","news"); 
Statement stmt=con.createStatement(); 
stmt.close(); 
con.close(); 
} catch(SQLException ex) {  ex.printStackTrace(); } catch(java.lang.Exception ex) { ex.printStackTrace(); } } } 报错为:
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing 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 Source)
at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
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 insert.main(insert.java:19)
系统sp3和sp4补丁都打了!
jdbc驱动也装了!
请高手指教!解决马上就给50分!

解决方案 »

  1.   

    我遇到过类似的问题,肯定是sp3没安上,建议你在看看,我这里有测试是否连上的源码 如下:
    import java.sql.*; public class DBManager{ 
    Connection conn=null; 
    public DBManager(){ 
    try{ 
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 
    }catch(Exception e){ 
    System.out.println("类加载失败"); 

    try{ 
    String url="jdbc:microsoft:sqlserver://localhost:1433;databaseName=university";//连接本机的1433端口,数据库名称university 
    conn = DriverManager.getConnection(url,"sa","aaaqqq123");//连接数据库用的用户名为sa,密码为空 
    System.out.println("OK!"); 
    }catch(Exception e){ 
    System.out.println("数据库连接失败"); 
    e.printStackTrace(); 


    public static void main(String arg[]){ 
    DBManager db=new DBManager(); 


    还有一个问题,就是测试的前提要开启tomcat服务器,你配了没有
      

  2.   

    String url="jdbc:microsoft:sqlserver://localhost:1433;databaseName=(university)";//用你自己的数据库名
    conn = DriverManager.getConnection(url,"sa","(aaaqqq123)");//用你自己sqlserver的密码
    注意我的括号
      

  3.   

    scswp()
    我用你的代码连接数据库失败!
    我的qq370975194请问您能加我吗?
      

  4.   

    在防火墙里面把1433端口打开,在命令行里面telnet ip 1433 看看是否成功
      

  5.   

    1 检查SQL SERVER 是否允许远程访问.具体步骤:1)打开"企业管理器",打开控制台根目录>SQL Server 组>数据库
    2)在相应"数据库"上单击右键,选择"属性"
    3)选择"连接"选项卡,检查"远程服务器连接"下,RPC服务是否选择.2 使用telnet IP地址 1433,系统是否提示连接出错,如系统提示出错
    检查是否防火墙屏蔽了SQL SERVER 或 java IDE 的网络访问端口
    如果是,关闭防火墙,重新启动SQL SERVER和java IDE,进行测试,
    如果系统仍提示上述错误,尝试下列步骤3 检查SQL SERVER 端口号及是否启用了TCP/IP协议,具体步骤:1)打开"企业管理器",打开控制台根目录>SQL Server 组>数据库
    2)在相应"数据库"上单击右键,选择"属性"
    3)选择"常规"选项卡,点击"网络配置",如启用的协议中无"TCP/IP协议"将其加入
    4)选择"TCP/IP协议",点击"属性",检查其端口号是否为1433
    5)如端口号为1433将其修改为其它端口号,修改jdbc连接语句,将端口号同样改为新启用的端口号,如jdbc:microsoft:sqlserver://server_name:1400(假设新端口号为 1400)
      

  6.   

    估计是sql server驱动没有装的问题
      

  7.   

    Error establishing socket
    把SQL Server中的1433端口设为允许