我正在从一个java应用程序运行一个sql查询。查询正在成功运行,并且能够获取数据并执行所需的操作。
但是,当试图在GV$SQL和V$SQLAREA中查找sql id时,查询不会出现。我在like子句中尝试了我的查询关键字的所有组合。
SQL查询:
select * from GV$SQL where UPPER(sql_text) like UPPER('%{query part here}%');这没有结果。对于在哪里查找我查询的sql id,有什么建议或想法吗?
发布于 2022-01-10 10:47:06
默认情况下,SQL_TEXT只包含前1000个字符,因此您可能要查找的查询组件超过了该字符。您可以通过使用SQL_FULLTEXT列来防止这种情况,这是一个阻塞。
也有可能查询已从共享池中老化,因此在其中不再可见。您还可以查询V$SQLSTATS,它通常有较长的保留期。
另外,再次检查在进入数据库的过程中,是否有其他东西使您的SQL不处于异常状态,例如,游标共享,这意味着如果您正在搜索一个文字,它可能已经从SQL中删除了。
https://stackoverflow.com/questions/70649028
复制相似问题