以前没有注意过这个问题,今天群里的朋友问了这个问题,发上来给大家看看:
创建一个文件a.sql:
select * from t2 start with root_id = 0 connect by prior id = root_id; /*zhushi*/
到sqlplus中执行:
SQL> @a.sql
3 ;
select * from t2 start with root_id = 0 connect by prior id = root_id; /*zhushi*/
*
ERROR at line 1:
ORA-00911: invalid character
修改a.sql如下:
select * from t2 start with root_id = 0 connect by prior id = root_id;
/*zhushi*/
成功执行:
ROOT_ID ID NAME DESCRIPTION
---------- ---------- ----- -----------
0 1 a aaa
1 2 a1 aaa1
1 3 a2 aaa2
0 4 b bbb
4 5 b1 bbb1
4 6 b2 bbb2
6 rows selected
由此得出结论,oracle对紧跟在;后面的注释都认为是非法字符.
不知是否正确.