概述

虽然现在存储过程相对比较少用了,但是平时接触不可避免的要跟存储过程打交道,当需要自己写的时候总会碰到这或那的错误,这个时候一般要怎么调试呢?


PL/SQL调试

PL/SQL中提供了【调试存储过程】的功能,可以完成存储过程的预编译与测试。

  1. 点击要调试的存储过程,右键选择TEST
  2. 如果需要查看变量,当然调试都需要。在右键菜单中选择Add debug information.
  3. start debugger(F9)开始我们的测试,Run(Ctrl+R)
  4. 随时在varible List中输入我们想查看的变量

其它:

Step into(Ctrl+N):单步调试,进入下一步

Step over(Ctrl+O):结束该语句

Step out(Ctrl+T):跳出该过程

Run to next exception:进入下一个断点Breakpoint

Toggle Breakpoint设置断点:光标指向一行,Ctrl+B;或鼠标点中该行的行号边缘


实验--调试存储过程

1、在要调试的过程上单击 test ,如下图所示:

2、单击“Test”后,PLSQL会打开调试界面,图中位置1的按钮就是开始调试的按钮,在调试之前要填写存过的参数,位置2就是填写参数的地方,如果有多个参数,会有多行参数框,按参数名填写相应的参数即可。

3、填写完参数,单击开始调试按钮后,调试的界面会发生一些变化。图中位置1的变化,说明存过已经处于执行状态,别人不能再编译或者执行。位置2的按钮就是执行按钮,单击这个按钮存过会执行完成或者遇到bug跳出,否则是不会停下来的,调试时不会用这个按钮的。位置3的按钮才是关键——单步执行,就是让代码一行一行的执行,位置4的按钮是跳出单步执行,等待下一个指令。

4、单击“单步执行”,存过开始单步执行。界面中每一次执行的代码会高亮显示(图中位置1),如果想要看某个变量具体的值,就在位置2的地方输入该变量名,然后变量的值会显示在位置3的地方。

5、调试的时候,每一次单步执行的时候要记一下执行代码的行数,图中位置3的数字就是当前执行代码的行数,就是第几行。如果过程单步执行到某行后,再单步执行的时候,存过就退出,那么错误就在该行的下一行。

6、代码执行到24行,在往下执行时,直接转到exception的地方,也就是异常处理的部分。

7、这说明我们代码中的错误在24和25行上,我们打开存过,浏览到24行和25行附近,发现25行和24行使用了两个变量,记住那两个变量。重新开始调试过程。

8、单步的执行时候把刚才那两个变量名填写到变量查看框,一边观察变量值变化,一边单步执行,执行到24行的时候,发现一个变量已经有值了,而另一个变量的值为null。错误原因明朗了吧?就是变量没有赋值或者初始话,给该变量赋值后存过就不报错了。


看完一定要去实践下,几分钟时间就可以掌握了。后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~

VS2019调试查看变量_PL/SQL调试存储过程?看这篇就够了相关推荐

  1. VS2019调试查看变量_机器人调试(六十六)

    一.给VS2012MFC添加DOS窗口 在相关的.cpp中添加: #include #include 添加控制台初始化函数: 需要调用AllocConsole()函数 //控制台初始化void Ini ...

  2. 数据库基础与SQL基础知识看这篇就够了!

    一.数据库简介 1. DBMS(DataBaseManagement System,数据库管理系统)和数据库数据库Schema有两种含义,一种是概念上的Schema,指的是一组DDL语句集,该语句集完 ...

  3. SQL 入门,看这篇就够了 ---- 基础篇

    目录 目录 目录 数据库安装 数据库基本概念 数据库管理系统(DBMS)的分类 SQL 语句 创建.删除.更新操作 创建数据库(CREAT DATABASE) 创建表 删除表 更新表 查询.筛选操作 ...

  4. VS2019调试查看变量_单片机编程软件一点通,IAR单片机编程软件工程调试方法

    单片机编程软件通常以Keil和IAR为主,大家在选择适合自己的单片机编程软件时可依据工程要求而定.本文内容针对IAR单片机编程软件,主要讲解该单片机编程软件的工程调试使用方法.如果你对本文将要讲解的内 ...

  5. 解决PyCharm调试查看变量时一直显示collecting data并报错Timeout waiting for response且看不到任何内容

    问题描述 如题,在用PyCharm进行Python代码调试查看具体变量时,会随机遇到一直显示collecting data,到最后报错Timeout waiting for response,在界面中 ...

  6. DEV-C++调试查看变量

    先将程序编译过,点击调试却出现这种情况 这时候我们点击工具->编译选项->代码生成/优化->连接器->产生调试信息,将no改成yes,就OK了 调试的时候在合适的地方设置断点, ...

  7. 学习SQL数据更新,这一篇就够了!

    [任务描述] 数据查询不能改变数据库中的数据,仅仅是把数据库中符号条件的某些信息反馈给用户.一个数据库若要保持数据的正确性.及时性.则要依赖于数据库的更新功能.数据更新主要包括插入数据.修改数据和删除 ...

  8. VS2019调试查看变量_你很可能需要知道这个调试小技巧

    缘起 最近在调试的时候,需要观察第三方容器中每一个元素的值.默认情况下,vs 并不知道如何显示第三方容器的内容,只能手动观察容器中的每一个值,超级不方便.我找到一个非常给力的好办法,你还知道其它好办法 ...

  9. win7查看tomcat端口_想研究Tomcat性能调优,看这篇就够了

    一.下载地址 https://tomcat.apache.org/download-80.cgi 二.安装步骤 将安装包 apache-tomcat-8.5.39.tar.gz 上传至服务器 /usr ...

最新文章

  1. mysql error 10048_mysql 连接异常(10048)
  2. 分布式b2b b2c o2o电子商务云平台
  3. 064_let关键字
  4. 开关设备对于数据中心正常运行时间很重要!
  5. arm 跳转指令跳转范围
  6. 忘记mysql登录密码怎么办
  7. C/C++中Static和Const的作用
  8. 关于box-shadow属性的一点心得
  9. flask-sqlalchemy 数据基本操作--实例
  10. OpenCV之基础图像容器Mat(2)
  11. 手机输入法带拼音声调_分享4种给拼音加声调的方法,让你的word更有灵魂
  12. 宠物管理系统mysql_基于java+MySQL的宠物管理系统
  13. 【毕业设计】基于stm32的示波器设计与实现 - 单片机 物联网
  14. 五分钟解读“大数据”
  15. SH-SSS丨《端到端音视频说话人日志网络》论文线上分享
  16. php 调试 打印错误
  17. JAVA数组元素比较
  18. 成吉思汗陵举行戊戌年成吉思汗嗣火祭祀
  19. 移动硬盘安装ubuntu20.04.5(重装无数次的一个教程)
  20. 小程序隐藏左上角小房子

热门文章

  1. 网络犯罪分子为何针对中小企业?—Vecloud微云
  2. windows下编译zlib
  3. react结合ts与mobx环境搭建步骤详解
  4. Zipline Development Guidelines
  5. java项目配置常见问题
  6. elasticsearch,python包pyes进行的处理
  7. UIKIT网页基本结构学习
  8. PC-如何提高计算机的启动和关机的速度?
  9. 设计模式-工厂模式学习(初级)
  10. 删除系统Win7系统盘越来越小,系统盘清理技巧