Calcifer Calcifer 2 Calcifer 3 Calcifer 4
Sql

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

2021/01/07 18:05 4424 次阅读 王梓
打赏
✸ ✸ ✸

问题表象

命令行调用执行 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命令行中 /* 会被解释为 /

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

✸ ✸ ✸

📜 留言板

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