【问题标题】:ORA-00911: invalid character ToadORA-00911: 无效字符 Toad
【发布时间】:2023-03-23 02:47:01
【问题描述】:

我正在使用 Toad 11.5

当我运行多个 truncate 语句时,它会给出错误 ORA-00911: invalid character

truncate table employees;
truncate table employees_edit_history;
truncate table sourcecontributioncalc;

但是当我一个个运行它时,它执行成功!当我运行一次所有语句时,为什么蟾蜍会报错?

还有解决方案吗?

【问题讨论】:

  • 您是作为语句运行 (F9) 还是作为脚本运行多个语句 (F5)?我怀疑你只是使用了错误的命令。
  • @AlexPoole 哦耶!实际上我按下执行语句(F9)的左角按钮,这会产生问题!当我按 F5 (作为脚本执行)然后很好。谢谢!把你的答案我会接受! :)

标签: oracle toad ora-00911


【解决方案1】:

当您将其作为语句运行 (F9) 时,您不能有多个语句,并且分号是无意义的 - 因为它们是语句分隔符。 (例如,在 execute immediate 或 JDBC 调用中使用分号会出现相同的错误,因为它们只支持单个语句)。

如果你作为脚本 (F5) 运行,那么这些分隔符确实有意义,并且它们分隔的多个语句将按顺序执行。

【讨论】:

  • 分号在 Toad 内部确实有意义。解析器使用它们来准确检测编辑器中的所有代码并填充导航器。它还允许在编辑器中存在多个语句,并通过简单地将插入符号放在其上而不选择它来使用 F9 执行正确的语句。也可以用空行分隔语句,使用 CTRL+Enter 或 Shift+F9,但与 F9 执行不一样。多年来,Toad 论坛上已对该主题进行了详细讨论。
【解决方案2】:

您是否从其他地方复制并粘贴了这些语句? 有时复制语句是用不可见字符复制的,例如在unix和windows之间复制时会发生这种情况,因为每个操作系统的结束行字符不同。

手工重写这些语句可以解决这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-10
    • 1970-01-01
    • 1970-01-01
    • 2013-02-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多