数据库  表名:Book 创建如下
use jspdev;
create table book(bookId varchar(50),bookName varchar(50),publisher varchar(100),price float,constraint pk_book primary key(bookId));
insert into book values('001-22-23-1','jsp 应用开发详解','电子工业出版社',59.0);

解决方案 »

  1.   

    在浏览器中输入: http://localhost:8080/testMssql.jsp 后出现一个报错页面 上面的标题如下:HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception javax.servlet.ServletException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]用户 'jspdev' 登录失败。原因: 未与信任 SQL Server 连接相关联。
    at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:498)
    at org.apache.jsp.testMssql_jsp._jspService(testMssql_jsp.java:103)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92)
    …… …………  还有很多这样的错误行
      

  2.   

    但是在浏览器中输入: http://localhost:8080/testMssql.jsp 连接不上数据库 请大家帮我解决一下?
    =============
    显示有错误吗?把错误代码贴出来。
      

  3.   

    老兄,Class.forName()需要try...catch啊。没有这个不行滴
      

  4.   

    你的MS SQL数据库的登陆名和密码是不是jspdev和jspdev啊?  
    Connection con=java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=jspdev","jspdev","jspdev");
    错误在上面这句,产生的原因是你的给的数据库用户名或者密码是错误的
    =====
    另外通常情况想下面这样做,
    String url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=jspdev";//注:DatabaseName是你所使用的数据库名
    String user="jspdev";//数据库的用户名
    String password="jspdev";//数据库的登陆密码
    Connection con=DriverManager.getConnection(url,user,password);
    好处的便于以后的维护或者是升级
      

  5.   

    另外做数据库操作的时候应该使用
    try{
    数据库操作
    }catch(Exception e){
    处理异常情况
    }finally{
    释放资源(关闭结果集、连接等)
    }
      

  6.   

    上面的错误如果用户名和密码都正确的话,那就是MS sql资源管理器没有启动,所以连不上数据库,启动就好了
      

  7.   

    呵呵,应该是sql server 服务管理器
      

  8.   

    问题还是没有解决,错误同上  代码按steveyue(约翰岳)大哥的建议重新改了一下 不过问题还是老样子  请问怎么办?
      

  9.   

    请问你的数据库用户名和密码确信都是jspdev吗?照steveyue(约翰岳)的方法没有错啊,应该是你的用户名和密码的问题了
      

  10.   

    还有这句吗?:[用户 'jspdev' 登录失败。原因: 未与信任 SQL Server 连接相关联。]
      

  11.   

    你的MS SQL数据库的登陆名和密码是不是jspdev和jspdev啊?你试着用这个用户登录一下“查询分析器”,如果能登陆,再看你的语句哪里写错了!
      

  12.   

    安装SQL2000时有两种选择模式,看你选的是那种,一般混合模式,肯定可以连上,当然,数据库的用户名和密码要对。我的事混合模式,建议选择这种。
      

  13.   

    安装SQL2000时有两种选择模式,看你选的是那种,一般混合模式,肯定可以连上,当然,数据库的用户名和密码要对。我的事混合模式,建议选择这种。
    --------------------------------------------
    我用的是Windows身份验证模式 登陆数据库的 难道是登陆模式产生的错误么 看来我需要从新装上数据库 选择混合模式登陆
      

  14.   

    我不明白啊 windows混合验证不能吗?为什么呢?混合模式是sa登陆吧 或者是创建的其他用户 为什么这么就能呢?问题是处在这里吗 楼主重新装了吗?解决了吗?
    菜鸟关注中
      

  15.   

    关注。我也是这样的问题。不过现在又变了!(重新用Jbuilder9打开了一遍)下面是错误信息:
    E:\JBuilder9\jdk1.4\bin\javaw -classpath "E:\Accp\practice\J2EE\ch04\classes;E:\JBuilder9\lib\mssqldriver\msbase.jar;E:\JBuilder9\lib\mssqldriver\mssqlserver.jar;E:\JBuilder9\lib\mssqldriver\msutil.jar;E:\JBuilder9\jdk1.4\demo\jfc\Java2D\Java2Demo.jar;E:\JBuilder9\jdk1.4\demo\plugin\jfc\Java2D\Java2Demo.jar;E:\JBuilder9\jdk1.4\jre\lib\charsets.jar;E:\JBuilder9\jdk1.4\jre\lib\ext\dnsns.jar;E:\JBuilder9\jdk1.4\jre\lib\ext\ldapsec.jar;E:\JBuilder9\jdk1.4\jre\lib\ext\localedata.jar;E:\JBuilder9\jdk1.4\jre\lib\ext\sunjce_provider.jar;E:\JBuilder9\jdk1.4\jre\lib\im\indicim.jar;E:\JBuilder9\jdk1.4\jre\lib\jaws.jar;E:\JBuilder9\jdk1.4\jre\lib\jce.jar;E:\JBuilder9\jdk1.4\jre\lib\jsse.jar;E:\JBuilder9\jdk1.4\jre\lib\rt.jar;E:\JBuilder9\jdk1.4\jre\lib\sunrsasign.jar;E:\JBuilder9\jdk1.4\lib\dt.jar;E:\JBuilder9\jdk1.4\lib\htmlconverter.jar;E:\JBuilder9\jdk1.4\lib\tools.jar"  ch04.conSQL 
    java.sql.SQLException: [Microsoft][SQLServer JDBC Driver]Error establishing socket.
    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 ch04.conSQL.main(conSQL.java:47)
    java.sql.SQLException: [Microsoft][SQLServer JDBC Driver]Error establishing socket.那位高手给看一下,多谢!真的只能重装SQL Server吗?
      

  16.   

    安装SQL JDBC驱动
    http://www.microsoft.com/downloads/details.aspx?FamilyID=07287b11-0502-461a-b138-2aa54bfdc03a&DisplayLang=en#filelist
    ----------------------------------
    将msbase.jar, mssqlserver.jar,msutil.jar 三个文件
      拷贝到比如:你的程序目录\WEB-LIB\lib
    -----------------------------------
    2.把jdbc驱动中三个JAR文件COPY到我的\JRE\LIB\EXT下(不用设置classpath)
    ----------------
    测试,不用建表,用的是sql中的表
    <%@ page contentType="text/html;charset=gb2312"%> 
    <%@ page import="java.sql.*"%> 
    <html> 
    <body> 
    <%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
    String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; 
    String user="sa"; //用户名
    String password=""; //密码
    Connection conn= DriverManager.getConnection(url,user,password); 
    Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
    String sql="select * from jobs"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while(rs.next()) {%> 
    <%=rs.getString(1)%> 
    <%}%> 
    <%rs.close(); 
    stmt.close(); 
    conn.close(); 
    %> 
    </body>  
    </html>
      

  17.   

    未与信任 SQL Server 连接相关联//
    Error establishing socket
    ----------------------------------
    楼主想想,驱动程序肯定正确没问题,代码这么多高手都看了,也正确。大概在程序访问数据库时连接不到。这样,首先要考虑的是用户有没那权限访问,没问题的话,大概肯定能的(混合模式)。其次,数据库端口是不是开着,如果没打开到1433端口,肯定连不到(套节子不能建立)。
    以前我用WINDOWS203,SQL2000 SP2 也出现这问题。TELNET不到1433。查资料,原来是Microsoft在WINSOWS2003中,安装数据库时,封了连接端口,我打了SP3,访问成功。
    大概,我就知道怎么多。如果不是这问题,我也无能为力了。