你用将错误信息打印出来看看:
System.out.println(e.toString());

解决方案 »

  1.   

    我用过另外一种JDBC ODBC桥的方式连接数据库成功过:
       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
       Connection conn = DriverManager.getConnection("jdbc:odbc:myDSN","uid","pwd");其中myDSN是你在Windows的ODBC中设置的SQL Server的ODBC DSN。
      

  2.   

    System.out.println("xxxxx");
    改成System.out.println(e.getMessage());
    看是什么报错?
      

  3.   

    安装到c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC下  设置classpath如下:  c:\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar;   c:\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar;  c:\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar Pls check carefully.Are they the same?
      

  4.   

    改写:
    }catch(Exception e){
            System.out.println(e.getMessage());
    }然后将错误信息贴出来看看
      

  5.   

    把三个文件拷贝到JDK的LIB下!
      

  6.   

    jdbc:microsoft:sqlserver://sds:1433;(?this is semicolon or colon)DatabaseName=test
      

  7.   

    更正:1.我设置classpath应是如下:  c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar;   c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar;  c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar 2.我刚才用e.toString()试了,错误信息是:java.lang.ClassNotFoundException:com.microsoft.jdbc.sqlserver.SQLServerDriver我应该怎样设置呢?
      

  8.   

    把SQLServerDriver加到WebAppServer的lib中,或者加到CLASSPATH中
      

  9.   

    我上面不是把ClassPath设置好了吗?不知是否有误?????????????????????散分..........................
      

  10.   

    。。错误提示都写的那么清楚了,说是找不到类,有这个时间你都可以把你的classpath重新设一遍(c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar 
    最后加个“;”号)或者干脆把那三个jar文件拷贝到lib目录下,试上N遍了。
      

  11.   

    import java.sql.*;
    public class opendb
    {
       String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
       String sConnStr="jdbc:odbc:jdbjsp";
       Connection cn=null;
       ResultSet rs=null;
       Statement st=null;
       public opendb()
       {
         try{Class.forName(sDBDriver);}
         catch(ClassNotFoundException e1){System.err.println("opendb():"+e1.getMessage());}
       }  
       
       public ResultSet executeQuery(String sql)
       { rs=null;
         try{cn=DriverManager.getConnection(sConnStr,"sa","");
          st=cn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
         rs=st.executeQuery(sql);}
         catch(SQLException e2){System.err.println("opendb():"+e2.getMessage());}
         return rs;
          
       
       }
       public void executeUpdate(String sql)
       {
          try{
               cn=DriverManager.getConnection(sConnStr,"sa","");
               st=cn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
               st.executeUpdate(sql);
             }
          catch(Exception e){System.out.println("Update Exception:"+e.getMessage());}
       }
       public void closest()
    {
    try
    {
    st.close();
    }
    catch(SQLException e)
    {
    System.out.println("Close st Exception:"+e.getMessage());
    }
    }

    public void closecn()
    {
    try
    {
    cn.close();
    }
    catch(SQLException e)
    {
    System.out.println("Close cn Exception:"+e.getMessage());
    }
    }
    }
      

  12.   

    其实,这和你的JDBC Driver没有关系,你的数据已经读出来了,是乱码的问题,
    因为JAVA使用Unicode编码,如果你数据库里的数据是中文的话,
    可能在数据解析的时候出错了,你仔细去查查API,看看有关解析编码的地方。!!!!shakuler
      

  13.   

    c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar好像classpath根本不认空格的 !!!
    换个不带空格的路径 ------------------------------------------------------
               我们还年轻牛奶会有的奶牛也会有的 
                 可天天在 csdn 混这些会有吗 ??
      

  14.   

    http://www.fooldock.com/artshow.jsp?id=35首先去微软下载MS SQL Server的JDBC驱动程序  http://www.microsoft.com/china/sql/downloads/2000/jdbc.asp点右边的下载Setup.exe文件
    下载安装后,在C:Program FilesMicrosoft SQL Server 2000 Driver for JDBClib下面会生成3个jar文件,把他们复制到你的tomcatcommonlib下或者resinlib下在我的电脑-->属性-->高级-->环境变量里把这3个jar文件添加到CLASSPATH里
    (注意分号)数据库驱动:com.microsoft.jdbc.sqlserver.SQLServerDriver
    用户名:sa
    密码:
    连接字符串:jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=scs;如果插入数据库有乱码,在插入数据库的页面的间加
    注意:
    如果连接数据库的时候提示: 
    用户 "sa" 登录失败。原因: 未与信任 SQL Server 连接相关联。
    -----------------------------------------------------------------------------
    因为你在安装SQL时选择的认证方式是WINNT混合认证模式,没有给SA设定密码,所以SA会失败。登陆企业管理器修改SA密码即可使用。  该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式,因此用户无法使用SQL Server的登录帐户(如 sa )进行连接。解决方法如下所示:
      1、 在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server;
      2、 展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡;
      3、 在"身份验证"下,选择"SQL Server和 Windows "。
      4、 重新启动SQL Server服务。
      

  15.   

    按你的错误显示是驱动没有找到,可是你又可以显示XXXXXX出来,真是奇怪
    如果是驱动问题
    把驱动(楼上说的三个文件)放到jdk的\jre\lib\ext\下就可以了,classpath中不用再做设置如果是不能显示中文,应该是编码问题
    试一下把System.out.println(rs.getString("name"));改成
    String outString = new String(rs.getString("name").getBytes("gb2312"),"ISO8859-1")
    System.out.println(outString);