java 里面 如何 获取 sql 运行数据库报错的信息
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 里面 如何 获取 sql 运行数据库报错的信息相关的知识,希望对你有一定的参考价值。
java 里面 如何 获取 sql 运行数据库报错的信息;
以便显示在jsp页面上;
除了 try catch 这个方法 我是要把获取的错误 传到页面显示的
就可以得到你所想要的oracle具体提示信息,
比如:ORA-000234,XXXXXXX
然后你就可以分析这些字符串,对照ORACLE的相关错误号文档,自己做处理。 参考技术A
就是try catch啊,你catch以后,把异常的msg赋值给一个变量,然后随便你怎么展示了,大致样子就是:
String errMsg = null;try
catch(Exception e)
errMsg=e.getMessage();
request.setAttribute("errMsg ",errMsg ); 参考技术B try
****代码****
catch(Exception excep)
excep.printStackTrace();
关键代码excep.printStackTrace(),这样在后台就会打印错误信息。本回答被提问者采纳 参考技术C 应该还是try catch吧,只是看你怎么处理这个异常了
sql在数据库里面单独运行没有错,但在程序里面运行就报错:
syntax error, expect RPAREN, actual ON ON, pos 352
select A.uli_ecgi_eci_fv, A.user_num num1, A.num2, A.num3, B.num4, B.num5 from
(SELECT
A.uli_ecgi_eci_fv,
COUNT(A.mei_fv) user_num,
(CASE WHEN SUM(B.ttime)>20*60*60 and COUNT(A.mei_fv)>20 THEN '是' ELSE '否' END) num2 ,
(CASE WHEN SUM(B.ip1_len_fvSUM)>300*1000 THEN '是' ELSE '否' END) num3
FROM
tshark_mme_index A
LEFT JOIN 2G_flow B ON A.mei_fv = B.IMEI
GROUP BY
A.uli_ecgi_eci_fv) A
INNER JOIN
(SELECT
A.uli_ecgi_eci_fv,
COUNT(A.mei_fv) user_num,
(CASE WHEN SUM(B.ttime)>20*60*60 and COUNT(A.mei_fv)>20 THEN '是' ELSE '否' END) num4 ,
(CASE WHEN SUM(B.ip1_len_fvSUM)>300*1000 THEN '是' ELSE '否' END) num5
FROM
tshark_mme_index A
LEFT JOIN 3G_flow B ON A.mei_fv = B.IMEI
GROUP BY
A.uli_ecgi_eci_fv) B
ON A.uli_ecgi_eci_fv = B.uli_ecgi_eci_fv limit 0,20
com.alibaba.druid.sql.parser.ParserException: syntax error, expect RPAREN, actual ON ON, pos 352
有没有谁能帮我看看
THEN '是' ELSE '否' END
改成
THEN ''是'' ELSE ''否'' END) ,
试试,
如果单独执行没问题,程序执行却有问题,那么有且只有这个地方有问题了!!追问
你说的这样我也试过,还是不行,但单独在数据库里面执行就是没有问题
参考技术A 跟踪下程序,输出下你要运行的sql,再去数据库里执行看看追问就是上面那条sql,那条sql在数据库里面执行是没有错的
追答应该是嵌套查询的问题,你可以把你后面2个表里的数据建立个临时表,将2部分数据存进去,在使用简单sql查询试试
以上是关于java 里面 如何 获取 sql 运行数据库报错的信息的主要内容,如果未能解决你的问题,请参考以下文章
如何在kettle报错时终止运行的同时将错误日志输出到数据库中
在jsp中获取Text中的时间并且插入到数据库里, 但老是报错(java.sql.Date.valueOf(Unknown Source)),
sql里面如何通过一个临时表的数据,修改另外一个表的数据,我定义游标,时常报错!
mybatis运行报错java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed
mybatis运行报错java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed
mybatis运行报错java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed