这个也是错误的  import java.sql.*;
 
 public class DbTest {
  
  Connection con;
  Statement  sta;
  ResultSet  rs;
  
  String driver;
  String url;
  String user;
  String pwd;
  public DbTest()
  {
      driver = "com.microsoft.JDBC.SQLServer.SQLServerDriver";
      url    = "JDBC:microsoft:SQLServer://localhost:1433;DatabaseName =OA";
      user   = "sa";
      pwd    = "123";
      init();
  }
  public void init()
  {
   try{
    Class.forName(driver);
  System.out.println("driver 已经创建");
    con = DriverManager.getConnection(url,user,pwd);
  System.out.println("conection  已经创建");
       sta = con.createStatement();
       rs  = sta.executeQuery
   ("select * from room");
       while(rs.next())
        System.out.println(rs.getInt("roomNum")); 
   }catch(Exception e)
    {
     e.printStackTrace();
    }
  }
  
  public static void main
  (String args [])
  
  {
   new DbTest();
  }
 }为什么啊

解决方案 »

  1.   

    找不到这个类:com.microsoft.jdbc.sqlserver.SQLServerDriver
      

  2.   

    没找到jdbc驱动呀 把mssqlserver.jar,msbase.jar,msutil.jar加到classpath中去
      

  3.   

    呵呵,当然jdbc加啦,我第一个例子就可以执行,第二个就不可以执行,执行环境都是一样的。我觉得不应该是jdbc的问题。如果是jdbc的问题,我想第一个例子不应该何以执行的。第二个例子就是比第一个例子多了个类而已啊,痛苦ing
      

  4.   

    你的错误显示的就是没有找到驱动的类,你可以检查一下在jar包里是否有这个类,或者在环境里是否导入了这个jar包
      

  5.   

    有可能是user 和 password 不正确.
      

  6.   

    不是啊,情况不是这样的,class Test没有报告ClassNotFoundException:com.microsoft.jdbc.sqlserver.SQLServerDriver 错误!
    但是public class DbTest 报告了这个错误,是在执行这个Class.forName(driver);语句时产生错误的。
    这两个文件,我是在同一个目录下编译执行的,如果我没有记jar包,应该class Test也报告相应的错误才对啊,还没有执行到DriverManager.getConnection(url,user,pwd);所以和user , password是没有关系的。
      

  7.   

    我的classpath是这样的:
    .;c:,;C:\Program Files\Microsoft SQL Server\80\Tools\BINN;C:\j2sdk1.4.2\bin;C:\j2sdk1.4.2\lib_data;C:\j2sdk1.4.2\lib_data\msbase.jar;C:\j2sdk1.4.2\lib_data\msutil.jar;C:\j2sdk1.4.2\lib_data\mssqlserver.jar;c:\j2sdk1.4.2\lib\dt.jar;c:\j2sdk1.4.2\lib\tools.jar;还有什么地方没有设置正确吗?
      

  8.   

    不知道你是用jdk来编程的还是用集成环境来写的,如果使用的是jb或者eclipse的话可以在project里面把驱动包加进去的,假如是用jdk手工来的话,那你的classpath就有问题了,把它改成这样试一下:
    .;C:\Program Files\Microsoft SQL Server\80\Tools\BINN;C:\j2sdk1.4.2\bin;C:\j2sdk1.4.2\lib_data;C:\j2sdk1.4.2\lib_data\msbase.jar;C:\j2sdk1.4.2\lib_data\msutil.jar;C:\j2sdk1.4.2\lib_data\mssqlserver.jar;c:\j2sdk1.4.2\lib\dt.jar;c:\j2sdk1.4.2\lib\tools.jar;实在不行看一下路径对不对
      

  9.   

    呵呵,算啦,不管了,可能是我的环境有问题,我到其它机器上去重新安装了一个环境就好了。我的calsspath设置是没有问题,我在其它机器上也是这样设置的。谢谢大家啦!