用e.printStackTrace();输出详细出错信息。

解决方案 »

  1.   

    很多种可能啊,,可能是系统问题,要打补丁,,也可能是JDBC驱动问题,,防火墙等等。
      

  2.   

    试试:url = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=test&user=sa&password=qjwq
    ;
        
    con = DriverManager.getConnection(url)
      

  3.   

    这个是JDBC驱动的问题在确定服务器打开后,你先用“桥式连接”连接一下数据库看看行不行!如果可以的话,就完全可以确定是数据库驱动的问题了!
      

  4.   

    tom2005说的混合模式是什么?
    还有就是楼上说的“桥式连接”又是怎么一回事,
    能不能说明白点?
      

  5.   

    用e.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:512)
    at java.sql.DriverManager.getConnection(DriverManager.java:171)
    at DBConnection.getConnection(DBConnection.java:23)
    at DBConnection.main(DBConnection.java:35)
      

  6.   

    JDBC驱动装了吗?数据库正确吗?包括密码启动了没有等等
      

  7.   

    端口是1433吗?
    我给个例子你吧。
    import java.sql.*;
    public class ConnectSQLServer
    {
    public static void main(String[] args) 
    {
    Connection con;
    DatabaseMetaData meta;
    ResultSet set,info;
    try 
    {
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    }
    catch(ClassNotFoundException e)
    {
    System.out.println("ClassNotFoundException ->"+e);
    }
    try
    {
    String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mobile;user=sa;password=123456" ;
    con = DriverManager.getConnection(url);
    if (con!=null)
    System.out.println("Connection successfull !");
    else System.out.println("Connection failure  !"); meta=con.getMetaData();
    System.out.println("getDatabaseProductName()->"+meta.getDatabaseProductName());
    System.out.println("getSchemaTerm()  ->"+meta.getSchemaTerm() );
    System.out.println("getURL()  ->"+meta.getURL() );
    System.out.println("getUserName()  ->"+meta.getUserName() );
    set=meta.getCatalogs();
    while (set.next())
    {
    System.out.println("TABLE_SCHEM ->"+set.getString(1));
    // System.out.println("TABLE_CATALOG ->"+set.getString(2));
    }  
    String type[]={"TABLE"};
    String column[]={"TABLE_CAT","TABLE_SCHEM","TABLE_NAME","TABLE_TYPE","REMARKS"};
    //String column[]={"TABLE_CAT","TABLE_SCHEM","TABLE_NAME","TABLE_TYPE","REMARKS","TYPE_CAT", "TYPE_SCHEM","TYPE_NAME","SELF_REFERENCING_COL_NAME","REF_GENERATION"
                info=meta.getTables(null,null,"%",type);
    ResultSetMetaData me=info.getMetaData();
    for (int i=1;i<=me.getColumnCount();i++)
    System.out.println(me.getColumnName(i));
         while (info.next())
    {
    for (int i=1;i<=5;i++)
    // System.out.println(column[i-1]);
    System.out.println(column[i-1]+"<----->"+info.getString(i));
    System.out.println();

    }
    catch (Exception e) 
    {
      System.out.println("Exception ->"+e);
    }
    }
    }