<2002-12-27 下午03时44分53秒> <Error> <HTTP> <[WebAppServletContext(246689,Defau ltWebApp,/DefaultWebApp)] Root cause of ServletException java.sql.SQLException: ORA-00600: 内部错误代码,参数: [ttcgcshnd-1], [0], [], [] , [], [], [], [] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168) at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208) at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543) at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405) at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:889) at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.jav a:1681) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme nt.java:1870) at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java: 538) at jsp_servlet._oracle._jspService(_oracle.java:108) at weblogic.servlet.jsp.JspBase.service(JspBase.java:27) at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm pl.java:263) at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm pl.java:200) at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe rvletContext.java:2390) at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm pl.java:1959) at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120) >
String sql="select chax_id from t_chax where chax_id = '00000042000000060429' "; ResultSet rs = stmt.executeQuery(sql);//就是此处报错。
%>
String sql="select chax_id from t_chax where chax_id = '00000042000000060429' "; 此句没错我在后台能运行。
我想是不是后台有问题呀,有谁见过吗? 这是weblogic 打印出的信息。 <2002-12-27 下午03时44分53秒> <Error> <HTTP> <[WebAppServletContext(246689,Defau ltWebApp,/DefaultWebApp)] Root cause of ServletException java.sql.SQLException: ORA-00600: 内部错误代码,参数: [ttcgcshnd-1], [0], [], [] , [], [], [], [] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168) at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208) at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543) at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405) at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:889) at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.jav a:1681) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme nt.java:1870) at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java: 538) at jsp_servlet._oracle._jspService(_oracle.java:108) at weblogic.servlet.jsp.JspBase.service(JspBase.java:27) at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm pl.java:263) at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm pl.java:200) at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe rvletContext.java:2390) at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm pl.java:1959) at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120) >
ORA-600 数据库内部错误,没有办法,只能从ORACLE的CLASS12_G.ZIP下载试试
倒,我查了error message,贴出来你自己看看。ORA-00600: internal error code, arguments: [ num] , [] , [],[],[],[] An actual message might appear as follows: ORA-00600: internal error code, arguments: [1042], [3], [upilam], [], [], [] The message text can be followed by up to six arguments, which indicate the origin and attributes of the error. The first argument is the internal error number. Other arguments are various numbers, names, and character strings. Empty brackets may be ignored. In addition to being returned to the user, internal errors are also written to the Alert file along with additional information about the event causing the message. The Alert file also lists any trace files that may have been generated because of an internal error. See the following sections for descriptions of the trace and alert files. If you receive an ORA-00600 message, report it to Oracle Support Services. 附:抱歉,我除了觉得你代码中的PreparedStatement那句有点多余,别的好像也没什么。不过你最后没有关闭链接好像很不好。还有,你创建链接的时候没有try catch (SQLException) 竟然编译通过,真是不可思议。
import="java.util.*,
java.sql.*" %>
<%
String sqlString = "select * from tmp_taxcasestat order by id";
Connection conn = null;
java.sql.Statement stmt = null;
CallableStatement stmtproc = null;
ResultSet rs = null,rst=null;
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.137:1521:orcl", "jsp", "jsp");
}catch(SQLException e){
System.out.println("Query is failure and error code is " + Integer.toString(e.getErrorCode()));
System.out.println("Query error Message: " + e.getMessage());
}
try
{
stmt = conn.createStatement();
if(stmt.getMaxRows() != 0){stmt.setMaxRows(0);}
stmt.setQueryTimeout(60);
rs = stmt.executeQuery(sqlOrgString);
orgString=rs.getString(1);
}catch( SQLException e){
System.out.println("Query is failure and error code is " + Integer.toString(e.getErrorCode()));
System.out.println("Query error Message: " + e.getMessage());
}
%>
具体是一个叫classes12.jar的文件,一般放在oracle\jdbc\lib下面,将这个jar文件加入类路径。DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());String connectString="jdbc:oracle:thin:@192.168.4.188:1521:ora9test";
Connection conn = DriverManager.getConnection(connectString,"testxml","testxml");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from tables");
ltWebApp,/DefaultWebApp)] Root cause of ServletException
java.sql.SQLException: ORA-00600: 内部错误代码,参数: [ttcgcshnd-1], [0], [], []
, [], [], [], [] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405)
at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:889)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.jav
a:1681)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
nt.java:1870)
at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:
538)
at jsp_servlet._oracle._jspService(_oracle.java:108)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:263)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:200)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
rvletContext.java:2390)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
pl.java:1959)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<html>
<head><title>JSP连接SQL数据库</title>
</head><body>
<p><font color="#0000FF" size="+2">查询结果</font></p>
<table width="79%" border="1">
<tr>
<td><font color="#FF00FF" size="+1">ID号</font></td>
<td><font color="#FF00FF" size="+1">姓名</font></td>
<td><font color="#FF00FF" size="+1">地址</font></td>
<td><font color="#FF00FF" size="+1">爱好</font></td>
</tr>
<% // String kcc = request.getParameter("kk"); %>
<%! PreparedStatement preparedStatement; %>
<%
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());String connectString="jdbc:oracle:thin:@192.168.104.212:1521:tp315";
Connection conn = DriverManager.getConnection(connectString,"topuser","toppass");
Statement stmt = conn.createStatement();
String sql="select chax_id from t_chax where chax_id = '00000042000000060429' ";
ResultSet rs = stmt.executeQuery(sql);//就是此处报错。
%>
此句没错我在后台能运行。
这是weblogic 打印出的信息。
<2002-12-27 下午03时44分53秒> <Error> <HTTP> <[WebAppServletContext(246689,Defau
ltWebApp,/DefaultWebApp)] Root cause of ServletException
java.sql.SQLException: ORA-00600: 内部错误代码,参数: [ttcgcshnd-1], [0], [], []
, [], [], [], [] at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405)
at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:889)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.jav
a:1681)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
nt.java:1870)
at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:
538)
at jsp_servlet._oracle._jspService(_oracle.java:108)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:263)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:200)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
rvletContext.java:2390)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
pl.java:1959)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
>
An actual message might appear as follows:
ORA-00600: internal error code, arguments: [1042], [3], [upilam], [], [], []
The message text can be followed by up to six arguments, which indicate the origin
and attributes of the error. The first argument is the internal error number. Other
arguments are various numbers, names, and character strings. Empty brackets may
be ignored.
In addition to being returned to the user, internal errors are also written to the Alert
file along with additional information about the event causing the message. The
Alert file also lists any trace files that may have been generated because of an
internal error. See the following sections for descriptions of the trace and alert files.
If you receive an ORA-00600 message, report it to Oracle Support Services.
附:抱歉,我除了觉得你代码中的PreparedStatement那句有点多余,别的好像也没什么。不过你最后没有关闭链接好像很不好。还有,你创建链接的时候没有try catch (SQLException) 竟然编译通过,真是不可思议。
原代码:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<html>
<head><title>JSP连接SQL数据库</title>
</head><body>
<p><font color="#0000FF" size="+2">查询结果</font></p>
<table width="79%" border="1">
<tr>
<td><font color="#FF00FF" size="+1">ID号</font></td>
<td><font color="#FF00FF" size="+1">姓名</font></td>
<td><font color="#FF00FF" size="+1">地址</font></td>
<td><font color="#FF00FF" size="+1">爱好</font></td>
</tr>
<% // String kcc = request.getParameter("kk"); %>
<%!
Connection conn=null;
Statement stmt =null;
ResultSet rs=null;
String connectString="jdbc:oracle:thin:@192.168.104.212:1521:top315";
String sql="select chax_id from t_chax where chax_id = '00000042000000060429' ";
%><%
//DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (Exception e){
out.print(e+"111111");
return;
}try{
conn = DriverManager.getConnection(connectString,"topuser","toppass");
}catch(SQLException e){
out.print(e+"222222");
return;
}
try{
stmt = conn.createStatement();
}catch(SQLException e){
out.print(e+"33333");
return;
}
try{
rs = stmt.executeQuery(sql);
}catch(SQLException e){
out.print(e+"44444");
return;
} if (conn != null) conn.close();
if (stmt != null) stmt.close();
if(rs != null) rs.close();
%>所报错误为://页面报的
java.sql.SQLException: ORA-00600: 内部错误代码,参数: [ttcgcshnd-1], [0], [], [], [], [], [], [] 44444