3:DriverManager.getConnection("jdbc:microsoft:sqlserver://server1:1433,DatabaseName=pubs","sa","sa");
这个是对的。
你把那三个文件加到classpath中去,并不是放到什么lib中去。

解决方案 »

  1.   

    我是用3的写法的,实践证明是可以的,至于1和2我没有实践过,不知道。
    你上面的程序是找不到驱动,msutil.jar,mssqlserver.jar,msbase.jar考到Tomcat\common\lib下
    你试试看
      

  2.   

    我拷到lib目录下了,而且也设置了classpath,这两点我都做了
      

  3.   

    把那三个jar文件拷到JDK的\jre\lib\ext目录下
      

  4.   

    有没有搞错,你们这么说说,我就要到处拷文件,我这个机子里起码有10多份这三个文件的拷贝了,我都不知道哪里有,反正几乎每个可能的lib下面我都放置了这三个文件(按照上面说的),再次声明,先看题目再回答问题这种不负责任得乱说太要不得了,还有,我关了win2000server下的一些服务,不知道会不会有影响,sqlserver可以联接
      

  5.   

    还有一个比较恶心的问题是在JBuilder9下这个程序可以运行,只要设置JDBC的Library就可以了,我无语啊,再次恳求为何在JDK直接编译时出错,到底我要把那三个文件放在哪里??
      

  6.   

    先看有没有设好驱动的classpath.
    然后你可以打开驱动程序包看没有com.microsoft.jdbc.sqlserver.SQLServerDriver这个类!
      

  7.   

    我也遇到过这样的问题,但我的是重装了驱动,后来就好了,楼主也可以试了看一下,它那三个文件只要放在Tomcat\common\lib下就可以了,好运
      

  8.   

    <%@ page contentType="text/html; charset=GB2312" %>
    <%@ page import="java.sql.*"%>
    <html>
    <head>
    <title>
    sqlDemo
    </title>
    </head>
    <%
       Connection con=null;
       Statement s=null;
       
       String Driver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
       String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test";  //在这里改写DatabaseName为你的数据库
       try{
           Class.forName(Driver).newInstance();
          } catch (ClassNotFoundException e){
            System.err.println("Don't Driver");
          }
           try{
            con=DriverManager.getConnection(url,"test","test");//这里写上你的用户名及密码
            s=con.createStatement();
            String sql="select * from admin";
            ResultSet rs=s.executeQuery(sql);    
            
    while(rs.next()) {%>    
    您的第一个字段内容为:<%=rs.getString(1)%><br> 
     <br> 
    <%}%>    
    <%out.print("数据库操作成功,恭喜你");%>    
    <%rs.close();    
    s.close();    
    s.close();  
    }
    catch(Exception ww)
    {
    out.println("数据库错误:"+ww.getMessage());
    }  
    %>    
      

  9.   

    yangsm(不要让困难成为理由)你的JSP可以使用
      

  10.   

    程序可用,修改如下:
    try
    {
    Class.forName(sDBDriver).newInstance();//原来是Class.forName(sDBDriver);
    }
    catch(java.lang.ClassNotFoundException e)
    {
    System.out.println("personbean():"+e.getMessage());
    }
    catch(java.lang.InstantiationException ie)
    {
    }
    catch( java.lang.IllegalAccessException iae)
    {
    }
    }
      

  11.   

    你要在jsp上面测试,而不是在java程序中测试,知道吗,在jsp中写
      

  12.   

    再来一个问题
    try
    {
    Class.forName(sDBDriver);
    }catch(Exception e)
    {
    }
    修改回来还是能够连接上,估计是我的电脑给我开了个玩笑,或者是RPWT,555555
      

  13.   

    To  tyonggang(失眠的狮子):呵呵,多谢提醒,JDK和Tomcat开发我还知道的,.java和.jsp我还是分的开的,多谢
      

  14.   

    我也是的,classpath也设置好了,用JDBC工具也可以调试通过,在JSP页面里也可以访问,就是在Java程序里无法找到这个驱动“com.microsoft.jdbc.sqlserver.SQLServerDriver”,真晕,请知道怎么解决的同仁能指点指点啊...
      

  15.   

    "Class.forName(sDBDriver)"和"Class.forName(sDBDriver)).newInstance();"不是一样的吗,我感觉是它无视我们在Classpath中所设置的驱动路径。
    因为我在用JDBC调试工具连接时,若从Classpath中搜索就是怎么也找不着,而使用文件定位一下子就找到了。真奇怪!
      

  16.   

    这个classpath配置不需要重启机子吧,上次没重启,这次重新开机后,问题得到解决,呵呵,声明:以上代码都没有问题,建议也都可以,出现的问题也无缘无故就好了,以后大家碰到要小心啊