gpt4 book ai didi

java - 奇怪的 SQL 浪费我的资源

转载 作者:行者123 更新时间:2023-11-28 23:47:59 24 4
gpt4 key购买 nike

我的 11.2.0.3 数据库遇到问题,一个奇怪的查询占总数据库 Activity 的 47.42%。

该应用程序是使用 Flex 开发的,前端是 Apache Tomcat 6.0.35,Java 版本为 1.6.0_27。

我在几个网站上搜索过,发现其他人也有同样的问题,甚至在这个网站上 (Mysterious SQL blocking my stored procedure from executing on ORACLE),但到目前为止还没有找到解决方案:-(

查询是:

     SELECT package_name AS procedure_cat,
owner AS procedure_schem,
object_name AS procedure_name,
argument_name AS column_name,
DECODE(position,
0, 5,
DECODE(in_out,
'IN', 1,
'OUT', 4,
'IN/OUT', 2,
0)) AS column_type,
DECODE (data_type,
'CHAR', 1,
'VARCHAR2', 12,
'NUMBER', 3,
'LONG', -1,
'DATE', 91,
'RAW', -3,
'LONG RAW', -4,
'TIMESTAMP', 93,
'TIMESTAMP WITH TIME ZONE', -101,
'TIMESTAMP WITH LOCAL TIME ZONE', -102,
'INTERVAL YEAR TO MONTH', -103,
'INTERVAL DAY TO SECOND', -104,
'BINARY_FLOAT', 100,
'BINARY_DOUBLE', 101,
1111) AS data_type,
DECODE(data_type,
'OBJECT', type_owner || '.' || type_name,
data_type) AS type_name,
DECODE (data_precision,
NULL, data_length,
data_precision) AS precision,
data_length AS length,
data_scale AS scale,
10 AS radix,
1 AS nullable,
NULL AS remarks,
sequence,
overload,
default_value
FROM all_arguments
WHERE owner LIKE :1 ESCAPE '/'
AND object_name LIKE :2 ESCAPE '/'
AND package_name IS NULL
AND (argument_name LIKE :5 ESCAPE '/'
OR (argument_name IS NULL
AND data_type IS NOT NULL))
ORDER BY procedure_schem, procedure_name, overload, sequence

我想知道是否有人找到了解决方案?

最佳答案

您的代码是否使用了 Spring 的 SimpleJdbcCall 类?此类尝试获取有关存储过程的信息并缓存结果。因此,请确保实例化 SimpleJdbcCall 类一次,并在每次调用存储过程时重用它。

或者,您可以在构造 SimpleJdbcCall 对象时调用 withoutProcedureColumnMetaDataAccess()。

关于java - 奇怪的 SQL 浪费我的资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11934749/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com