SQLPlus中行末尾的Coments

SQLPlus中行末尾的Coments,sql,oracle,sqlplus,Sql,Oracle,Sqlplus,我检查过,如果我在句子结尾(;)的字符后写一个注释,说明不会运行,但也没有错误,就像所有的行都是注释一样 例如: Insert into MI_TABLA (FIELD1, FIELD2, FIELD3, FIELD4, FIELD5) Values ( 311, 'TEST1', 'TEST1', 'TEST1', 1); INSERT INTO MI_TABLA (FIELD1, FIELD2, FIELD3, FIELD4, FIELD5) VALUES ( 3

我检查过,如果我在句子结尾(;)的字符后写一个注释,说明不会运行,但也没有错误,就像所有的行都是注释一样

例如:

Insert into MI_TABLA
   (FIELD1, FIELD2, FIELD3, FIELD4, FIELD5)
 Values
   ( 311, 'TEST1', 'TEST1', 'TEST1', 1);

INSERT INTO MI_TABLA
   (FIELD1, FIELD2, FIELD3, FIELD4, FIELD5)
VALUES
   ( 312, 'TEST2', 'TEST2', 'TEST2', 1);--Comment that ignore all the line

INSERT INTO MI_TABLA
   (FIELD1, FIELD2, FIELD3, FIELD4, FIELD5)
VALUES
   ( 313, 'TEST3', 'TEST3', 'TEST3', 1);

COMMIT;
如果我在数据库上使用SQLPlus运行这个,结果是只插入了TEST1和TEST3,而没有插入TEST2。但坏消息是没有显示任何错误,并且输出仅显示2个插入(有两条类似于这样的消息:1行已创建,仅此而已)

你知道原因吗?有没有办法让SQLPlus不忽略这一行并工作,或者至少它显示了任何错误?

分号(;)必须是语句的最后一个字符,否则sql*plus将无法识别它。
一个简单的解决方法是在注释后加上分号,尽管我更喜欢将分号放在单独的一行。

经过大量的测试和错误,我终于找到了解决问题的方法。我希望它能帮助任何有同样问题的人

解决方案很简单:在脚本的第一行或SQL提示符处编写下一行:

SET SQLBLANKLINES ON

当句子以分号后的注释结尾时,以及当“否”以分号结尾时,我会遇到一个错误。

上有一个类似的问题,但它没有给出这种行为的原因。“您只能包括”- -“如果注释本身在一行上,则设置注释样式”“不要将注释放在语句终止符(句号、分号或斜杠)之后。”“Id这是一个非法选项,为什么它不输出错误?我看到的另一件奇怪的事情是,如果句子没有以“;”结尾,但空行后面的下一句是正确的,则没有错误。您可以在这张图片上看到:。我收回我的问题:Id这是一个非法选项,为什么它不输出错误?