当前位置: 首页 > news >正文

DBA必备脚本:Oracle获取绑定变量的字面SQL文本版版本替代

我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢!
由于博客中有大量代码,通过页面浏览效果更佳。

脚本的获取请关注公众号,回复脚本就可以获得方法。

在前面几天发布文章SQL优化必备脚本:Oracle获取绑定变量的字面SQL文本和脚本,今天有网友反馈在SQL中timestamp列返回空值和有两个date类型的列式会出现将字符中:1类似的内容识别为绑定变量。

关于timestamp返回空值,这个是由于V$SQL_BIND_CAPTURE的机制导致的,详细信息可以查考Mos:444551.1,关于SQL语句中有:1这种值时,会被识别绑定量来替代,所以此时会返回错误的结果。

现象的模拟

declareb1   DATE  := to_date('05/11/2025 15:19:56', 'mm/dd/yyyy hh24:mi:ss');b2 timestamp:=to_timestamp('05/11/2025 15:19:56', 'mm/dd/yyyy hh24:mi:ss');
begin
execute immediate q'[select count(*) from t1 where created>:2 and last_ddl_time<:1 ]' using b2,b1;
end;
/

脚本返回的结果如下:

SYS@HTZ@ARM19C> @sql_fulltext_by_sqlid.sql
Enter value for sqlid: 8xsugjwa5k75z
SYS
select count(*) from t1 where created>NULL and last_ddl_time<'05/11/2025 15:19:56'PL/SQL procedure successfully completed.

修复的思路

timestamp按照Mos的解决方案修复即可。
关于:1这种现象采用的是识别常亮值,也就是不替换''中的任何内容即可,这个时候需要我们自己写一个函数来实现。

修复的效果

修复后的脚本执行结果如下:

SYS@HTZ@ARM19C> @sql_fulltext_by_sqlid.sql
Enter value for sqlid: 8xsugjwa5k75z
SYS
select count(*) from t1 where created>'2025-05-11 15:19:56.000000000' and last_ddl_time<'05/11/2025 15:19:56'PL/SQL procedure successfully completed.

这个问题就修复到这个,如果大家在执行过程中,还有问题请随时在群里面反馈,我这边会及时的修复。

更多跟性能相关的脚本

Oracle DBA必备脚本:一秒就定位千行执行计划的SQL慢在哪一步
SQL优化必备脚本:Oracle获取绑定变量的字面SQL文本
Oracle DBA必备脚本:一键获取SQL性能数据,快速定位性能拐点
DBA必备脚本:一键获得SQL访问的表及对应的索引,可协助快速定位SQL性能瓶颈

------------------作者介绍-----------------------
姓名:黄廷忠
个人博客: (http://www.htz.pw)
CSDN地址: (https://blog.csdn.net/wwwhtzpw)
博客园地址: (https://www.cnblogs.com/www-htz-pw)

http://www.jsqmd.com/news/17458/

相关文章:

  • 联通光猫烽火吉比特HG6145F获取超级密码
  • 083_尚硅谷_多分支基本使用
  • 为什么制造业的仓库经验,放到电商就行不通?
  • Oracle案例:grid环境关于asm diskpath是否需要一致
  • 宠物去哪啦小程序系统:智能宠物管理与定位解决方案
  • Windows 如何关闭 dep数据执行保护 - 软件双击没反应的解决办法
  • 2025年整平机厂家推荐排行榜,整平机/校平机/矫平机/开平机/平板机/矫直机/校直机,高精度/精密/液压式/数控/金属/高效稳定/多种规格/全自动整平机公司推荐
  • 一佳旅游票务系统:旅游行业数字化一体化解决方案
  • 2025年10月洗碗机品牌推荐:海信领衔五大机型对比评测榜。
  • 广告敏感词图文检测微信小程序:高效合规检测解决方案
  • 2025年10月油烟机品牌推荐:海信领衔静音技术榜对比评测
  • Newtonsoft.Json笔记 -JToken、JObject、JArray详解
  • 软件测试流程-入门
  • 什么是人工智能?——AI的定义、发展历程与主要分类
  • CF2110F Faculty
  • 国产0.38mm超小22pF/50V/C0G电容HLCC2250G,77GHz实测S参数公开,可pin-to-pin替换
  • 微信消息管理桌面提醒版:桌面提醒与AI回复的完美结合
  • pip会读取 pyproject.toml 的 project.dependencies 字段进行依赖安装吗?
  • 昇腾npu架构运行deepseek
  • 进化计算入门
  • 02-01串口理论知识
  • 赋能安全管控:NVR接入录像回放平台EasyCVR加油站监控应用场景与实际功能
  • .Net 自定义定时器
  • python教程(一)
  • 2025 年片材机生产厂家最新推荐榜,技术实力与市场口碑深度解析多层共挤/流延/PC/pp 片材机公司推荐
  • OpenAI Codex整合Z.ai GLM-4.6编程
  • CF2110E Melody
  • 无状态HTTP的“记忆”高效的方案:Spring Boot中CookieSession全栈实战
  • LLM 笔记 —— 01 大型语言模型修炼史(Self-supervised Learning、Supervised Learning、RLHF) - 实践
  • 深入解析:【面试前必看:Redis 从入门到实战:核心知识与面试高频考点全解析】