You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Toad执行SQL遇ORA-00922错误,求原因及解决方法

ORA-00922: missing or invalid option 错误原因与解决方法

问题重现

在Toad中执行以下SQL代码时,报错指向SET serveroutput ON;语句:

[Error] Execution (1: 5): ORA-00922: missing or invalid option in toad

执行的代码:

set serveroutput on;

CREATE TABLE customers
( customer_id number(10) NOT NULL,
  customer_name varchar2(50) NOT NULL,
  city varchar2(50)
);

DROP TABLE customers;
/

错误原因

  1. SET serveroutput ON是SQL*Plus专属命令:它不属于标准Oracle SQL语法,Toad的普通SQL编辑器窗口会将其当作SQL语句解析,无法识别该命令,从而触发ORA-00922错误。
  2. 末尾的/也是SQL*Plus命令:这个符号在SQL*Plus中用于执行当前缓冲区的代码,但在Toad普通SQL窗口中不被识别,属于多余的无效语法。

解决方法

方法一:使用Toad的SQL*Plus窗口执行

打开Toad的SQL*Plus Editor(可通过菜单栏或工具栏找到入口),将代码粘贴进去执行即可——SQL*Plus窗口完全支持这类专属命令。

方法二:调整代码适配普通SQL窗口

如果习惯使用普通SQL窗口执行,只需修改代码:

CREATE TABLE customers
( customer_id number(10) NOT NULL,
  customer_name varchar2(50) NOT NULL,
  city varchar2(50)
);

DROP TABLE customers;
  • 去掉SET serveroutput ON;:若需要开启服务器输出,可在Toad设置中配置(路径:View → Toad Options → Execute → Oracle,勾选Enable serveroutput并设置缓冲区大小)。
  • 去掉末尾的/:普通SQL窗口会按分号自动分隔并执行每条语句。

内容的提问来源于stack exchange,提问作者noobprogrammer1987

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 22:10:29