Oracle ORA-00911:无效字符蟾蜍

Oracle ORA-00911:无效字符蟾蜍,oracle,toad,ora-00911,Oracle,Toad,Ora 00911,我用的是蟾蜍11.5 当我运行多个truncate语句时,它给出一个错误ORA-00911:无效字符 truncate table employees; truncate table employees_edit_history; truncate table sourcecontributioncalc; 但是当我一对一地运行它时,它成功地执行了!当我一次运行所有语句时,为什么蟾蜍会给出一个错误 有什么解决办法吗?您是否从其他地方复制并粘贴了这些语句? 有时复制语句时会使用不可见字符进行复制

我用的是蟾蜍11.5

当我运行多个truncate语句时,它给出一个错误ORA-00911:无效字符

truncate table employees;
truncate table employees_edit_history;
truncate table sourcecontributioncalc;
但是当我一对一地运行它时,它成功地执行了!当我一次运行所有语句时,为什么蟾蜍会给出一个错误


有什么解决办法吗?

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


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

当您将其作为语句(F9)运行时,不能有多个语句,分号没有意义,因为它们是语句分隔符。(例如,
executeimmediate
或JDBC调用中的分号也会出现同样的错误,因为它们只支持一条语句)


如果您以脚本(F5)的形式运行,那么这些分隔符确实有意义,它们呃分隔的多个语句将按顺序执行。

您是以语句(F9)的形式运行还是以脚本(F5)的形式运行多个语句?我怀疑你只是使用了错误的命令。@AlexPoole哦耶!实际上,我按下了左角的按钮,即execute语句(F9),这就产生了问题!当我按F5(作为脚本执行)时,就可以了。谢谢把你的答案写下来,我会接受的!:)分号在内部对蟾蜍确实有意义。解析器使用它们精确地检测编辑器中的所有代码并填充导航器。它还允许编辑器中存在多个语句,并且只需将插入符号放在上面而不选择它,就可以使用F9执行正确的语句。您也可以通过空行分隔语句,并使用CTRL+Enter或Shift+F9,但这与F9执行不同。多年来,蟾蜍论坛对这个话题进行了非常详细的讨论。