当前位置: 首页 > 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.hskmm.com/?act=detail&tid=35026

相关文章:

  • Newtonsoft.Json笔记 -JToken、JObject、JArray详解
  • 2025 最新活动跟拍直播公司推荐榜:广告影视圈权威评选,揭秘五大高性价比品牌覆盖西安及全国市场,会展 / 企业 / 赛事场景优选
  • 2025 年宣传片拍摄制作公司最新推荐排行榜:覆盖多领域优质服务商,助企业精准选靠谱合作伙伴
  • 02-02串口-USART模块
  • CF2110E Melody
  • 进化计算入门
  • 02-01串口理论知识
  • 赋能安全管控:NVR接入录像回放平台EasyCVR加油站监控应用场景与实际功能
  • .Net 自定义定时器
  • 2025年项目管理工具生态全景:技术主权与AI赋能的行业变革
  • 深度学习
  • Microsoft 代理框架简介(预览版):让每个开发人员都能轻松使用 AI 代理
  • 2025 年破碎机厂家最新推荐榜,聚焦企业技术实力与市场口碑深度解析圆锥/辊式/对辊/煤矸石/砂石破碎机厂家推荐
  • 站位3
  • AI 的能源危机:训练一个模型究竟要耗掉多少电?
  • 2025 年制砂机厂家最新推荐榜,聚焦企业技术实力与市场口碑深度解析高效/冲击式/砂石/新疆制砂机厂家推荐
  • 拆解3D Gaussian Splatting:原理框架、实战 demo 与自驾仿真落地探索!
  • WebSocket Turbo Intruder:挖掘WebSocket安全漏洞的利器
  • Gitee:本土化技术平台如何重塑中国开发者生态
  • Hyper-V 与 root的Android7模拟器共存
  • 视频监控界的“万能翻译器”:视频汇聚平台EasyCVR视频接入功能全解读
  • 基于Ubuntu22.04 部署Dify详细教程
  • Java 8 - Optional类
  • 使用 Github Pages 和 Hexo 搭建博客
  • linux 移动硬盘加载失败
  • 得帆AI aPaaS(AI低代码)1.0产品特性(5)-智能搭建(二)
  • 吱吱企业即时通讯不止通讯,还是数字化协作的安全与效率标杆
  • callout样式
  • 得帆AI aPaaS(AI低代码)1.0产品特性(4)-智能搭建(一)