关于JSP连接SQL2000的问题,急!
我的SQL2000已打了SP4的补丁,JDBC的3个jar包也放到lib下了,但是连接是总是出500错误,下面是我连接SQL的程序:<%Class.forName("co...
我的SQL2000已打了SP4的补丁,JDBC的3个jar包也放到lib下了,但是连接是总是出500错误,下面是我连接SQL的程序:<%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=xkxt";
String user="sa";
String password="aaaaaa";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from chengji";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){ %>
您的第一个字段内容为:<%=rs.getString(1)%><br>
您的第二个字段内容为:<%=rs.getString(2)%><br>
<%}%>
<%out.print("数据库连接成功,恭喜你");%>
<%
rs.close();
stmt.close();
conn.close();
%>
下面是500错误:exception
org.apache.jasper.JasperException: javax.servlet.ServletException: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:541)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause
javax.servlet.ServletException: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:850)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
org.apache.jsp.sql_005ftest_jsp._jspService(sql_005ftest_jsp.java:97)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 展开
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=xkxt";
String user="sa";
String password="aaaaaa";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from chengji";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){ %>
您的第一个字段内容为:<%=rs.getString(1)%><br>
您的第二个字段内容为:<%=rs.getString(2)%><br>
<%}%>
<%out.print("数据库连接成功,恭喜你");%>
<%
rs.close();
stmt.close();
conn.close();
%>
下面是500错误:exception
org.apache.jasper.JasperException: javax.servlet.ServletException: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:541)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause
javax.servlet.ServletException: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:850)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
org.apache.jsp.sql_005ftest_jsp._jspService(sql_005ftest_jsp.java:97)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 展开
展开全部
我建议你使用TRY语句块,捕获EXCEPTION,
连接数据库的密码有没有对呀.也就是说你安装2000时有没有设密码呀,如果没有设,你在这里加上密码就会连接不上,或许,你是不是把JDBC的三个JAR包放到JAVA的LIB里了,那肯定会错误,你把JAR包放到你服务器软件的LIB目录下,或者放到你网站止录下的web-inf/lib下,
我帮你加上异常捕获功能,打开看看,有什么提示
:<%
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=xkxt";
String user="sa";
String password="aaaaaa";
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
}
catch (Exception e){out.println(e.toString()+"未连接:因为找不到JDBC驱动");}
try{
Connection conn= DriverManager.getConnection(url,user,password);
<%out.print("数据库连接成功,恭喜你");%>
}
catch(Exception e){out.println(e.toString()+"用户名/密码/连接URL错误");}
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from chengji";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next())
{ %>
您的第一个字段内容为:<%=rs.getString(1)%><br>
您的第二个字段内容为:<%=rs.getString(2)%><br>
<%}%>
<%
if(rs!=null)
{
rs.close();
stmt.close();
conn.close(); }
else
out.println("没有连接上/数据库没有数据");
%>
连接数据库的密码有没有对呀.也就是说你安装2000时有没有设密码呀,如果没有设,你在这里加上密码就会连接不上,或许,你是不是把JDBC的三个JAR包放到JAVA的LIB里了,那肯定会错误,你把JAR包放到你服务器软件的LIB目录下,或者放到你网站止录下的web-inf/lib下,
我帮你加上异常捕获功能,打开看看,有什么提示
:<%
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=xkxt";
String user="sa";
String password="aaaaaa";
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
}
catch (Exception e){out.println(e.toString()+"未连接:因为找不到JDBC驱动");}
try{
Connection conn= DriverManager.getConnection(url,user,password);
<%out.print("数据库连接成功,恭喜你");%>
}
catch(Exception e){out.println(e.toString()+"用户名/密码/连接URL错误");}
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from chengji";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next())
{ %>
您的第一个字段内容为:<%=rs.getString(1)%><br>
您的第二个字段内容为:<%=rs.getString(2)%><br>
<%}%>
<%
if(rs!=null)
{
rs.close();
stmt.close();
conn.close(); }
else
out.println("没有连接上/数据库没有数据");
%>
展开全部
用JDBC—ODBC桥:
String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr="jdbc:odbc:chengji";
String sql="select * from chengji";
Connection conn=null;
ResultSet rs=null;
Class.forName(sDBDriver);
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr="jdbc:odbc:chengji";
String sql="select * from chengji";
Connection conn=null;
ResultSet rs=null;
Class.forName(sDBDriver);
conn=DriverManager.getConnection(sConnStr);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Windows xp 下 ,建议 使用 Sql 2005 或 Sql 2008
我使用 Sql 2005 个人版
配置起来 比较 简单,功能 也比 Sql2000 强劲
我使用 Sql 2005 个人版
配置起来 比较 简单,功能 也比 Sql2000 强劲
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果安装sp4包没有提示错误,如果使用Netbeans开发工具还要把三个jar包放到库文件夹下,添加库-新建sqlserver2000库文件-添加那三个jar包,如果有sa连接数据库失败,就要更改sqlserver2000企业管理器中的选项!网上很多!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
以前我也出现类似的问题(是在用HIBERNATE连接数据库时)。给个解决办法:
1.打开程序
2.点击运行
3.输入CMD
4.netstat -an
5.查看下有没有1433端口
如果没有,需要打个 SQL2000SP4 的补丁,就是1433端口号的啦~
安装提示成功后 记得要重启一下~
1.打开程序
2.点击运行
3.输入CMD
4.netstat -an
5.查看下有没有1433端口
如果没有,需要打个 SQL2000SP4 的补丁,就是1433端口号的啦~
安装提示成功后 记得要重启一下~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
补丁没有打好 重新开机, 要是不行 再补丁一遍
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询