Oracle SQL Developer:如何设置遇错误时终止脚本运行或提示用户
在Oracle SQL Developer中设置脚本遇错即终止的方法
当然可以!Oracle SQL Developer确实默认会忽略错误继续执行脚本,但我们有两种实用方式来调整这个行为,满足你的需求:
方法一:用SQL命令临时配置(单脚本生效)
如果你只想针对当前脚本修改行为,不用改动全局设置,可以在脚本开头添加SQL*Plus兼容的命令:
- 要遇到错误直接终止脚本,添加这条命令:
这样脚本执行中只要碰到SQL错误,就会立刻停止运行,并且返回失败状态。WHENEVER SQLERROR EXIT FAILURE - 要是你希望错误时回滚事务并终止,可以加上回滚指令:
WHENEVER SQLERROR EXIT FAILURE ROLLBACK
方法二:全局修改偏好设置(所有脚本默认生效)
如果想让所有脚本都默认遇错即停,不用每次手动加命令,可以调整SQL Developer的偏好设置:
- 点击顶部菜单栏的
Tools->Preferences - 在左侧导航栏展开
Database,选择Worksheet - 找到右侧的 Script Execution 区域,勾选
Stop on SQL Error选项 - 点击
OK保存设置,之后所有新打开的工作表执行脚本时,碰到错误就会自动停止
不过要提一下,Oracle SQL Developer目前没有原生的“遇到错误询问用户是否继续”的功能(不像SQL Workbench那样)。如果确实需要类似交互,你可以通过PL/SQL块捕获错误后自定义提示逻辑,但这种方式需要额外编写代码,相对繁琐,大多数场景下直接设置“遇错即停”就足够实用了。
内容的提问来源于stack exchange,提问作者Giuseppe
相关产品推荐
相关产品推荐

