我是一个JSP初学者 今天碰到一个问题 请大家给点建议:
    我用JDBC驱动连接SQL SERVER2000数据库
示例如下:
try{
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
    url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=university";
conn=DriverManager.getConnection(url,"admin","admin");//建立与数据库的连接
stmt=conn.createStatement();
sql="select * from student where userid='"+userid+"'"; 
rs=stmt.executeQuery(sql);

sql="insert into student(userid,username,sex,age,dept)";

sql=sql+"values('"+userid+"','"+username+"','"+sex+"','"+i+"','"+department+"')";
stmt.executeUpdate(sql);
out.println("<font size=3 color=blue>正在处理信息,请稍后......</font><meta http-equiv='refresh' content='2;url=list.jsp'>");
rs.close();
stmt.close();
conn.close();
  }
  catch(Exception e){
 out.println(e);
  }
%>
结果总是无法显示:报告出---java.lang.ClassNotFoundException:com.microsoft.jdbc.sqlserver.SQLServerDriver 是不是没有把JDBC加载好啊??
 还有就是我的JDBC驱动和SQL SERVER服务器没有装载在一个盘里,会不回有影响啊??小弟在这里谢谢各位了!!

解决方案 »

  1.   

    这个错误是由于JVM没法找到你的JDBC驱动类,你是在tomcat中使用JDBC还是在什么环境下使用?
    你可以在系统环境变量中加入
    classpath中将你的Microsfot SQLServer2000的JDBC驱动包文件路径加进去。
    例如,驱动包文件存放在c:\MSQLServer2000.jar
    那么classpath=c:\MSQLServer2000.jar;
    MSQLServer2000.jar我只是打个比方,不一定叫这个名字。
      

  2.   

    我是在tomcat中使用JDBC
      你说的CLASSPATH中添加我也添加了
    我的系统盘在E盘 所以CLASSPATH=E:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar;
      我的TOMCAT和SQL SERVER2000都在F 盘里
    还是出现了我上面所说的问题 症状也还是一样 再次感谢  peacedog():
       请大家在给我点建议
    谢谢~~
      

  3.   

    驱动包没有打好吧?
    JDBC驱动路径设置对了没有啊?
      

  4.   

    驱动包并不需要放到classpath中,你只需要放到tomcat\common\lib中就可以了,另外注意SQL Server2000驱动有三个jar。可以参考以下地址的文章:
    http://www.blogjava.net/rickhunter/category/3664.html
      

  5.   


    try{
        Class.forName("sun.jdbc.odbc.jdbcodbcDrivaer")
        conn=DriverManager.getConnection(jdbc:odbc:你的数据源); stmt=conn.createStatement();
    sql="select * from student where userid='"+userid+"'"; 
    rs=stmt.executeQuery(sql);PreparedStatement pStmt = conn.preparedStatement(
    "insert into emp (empno , ename) values(?,?)"); 
    pStmt.setint(1,1);
    pStmt.setString(2,"chenfeile");
    pStmt.SetString(3,"ll");
    pStmt.SetString(4,"生产部");
    pStmt.executeUpdate();
    //用这种方面比你的那种方式大大减少了时间
    rs.close();
    stmt.close();
    conn.close();
      }
      catch(Exception e){
     out.println(e);
      }
    注:依你那种写法..就是现在社会上的那些."垃圾代码".
    ..你可以把这些代码..写入到bean中. 等.
    以减少.. jsp在服务器端运行的速度..等.