sql oracle 注释导致最后一行被执行两次

葫芦的运维日志

浏览量 4304 2021/01/07 18:05

问题表象

命令行调用执行 1.sql

/*修改内容:***
* 创建人:***
* 创建时间:*
*/
INSERT INTO "test"(test1,test2,test3,test4) VALUES('test','123',sysdate,'1234');

/*END*/
SQL> @/home/oracle/1.sql

1 row created.

1 row created.

一行insert语句被执行了两次

问题原因

sqlplus命令行中 /* 会被解释为 /

/ 是执行缓冲区中的命令,即执行上一行命令,所以会被执行两次

葫芦的运维日志

打赏

留言板

留言提交后需管理员审核通过才会显示

© 冰糖葫芦甜(bthlt.com) 2025 王梓打赏联系方式陕ICP备17005322号-1