ITPub博客

首页 > Linux操作系统 > Linux操作系统 > sqlplus注释行号错误的问题

sqlplus注释行号错误的问题

原创 Linux操作系统 作者:yangtingkun 时间:2012-09-04 23:00:48 0 删除 编辑

又一个和注释有关的问题。

sqlplus注释导致语句重复执行:http://yangtingkun.net/?p=1155

 

 

和上一个错误类似,不过这个问题可能会使得用户认为SQLPLUS出现异常。

SQL> select
2 1
3 from
4 dual;

1
----------
         1

SQL> select /*
2 abc
3
SQL> select /*
2 abc
3 def
4 */
5 1
6 from dual;

1
----------
         1

可以看到,对于正常的SQL语句,回车后自动会变成2、3依次类推的行号,而对于行中的注释也是相同的处理方式。

而且在默认的sqlblanklines为OFF的设置下,如果出现一个空行,就会直接导致SQL的结束,而不管十分处于注释之中。

下面看这个例子:

SQL> /* select
SQL> abc
SQL> * from dual;
SQL>
SQL>
SQL>
SQL> select 1 from dual;
SQL> /
SQL> exit
SQL> l
SQL> exit
SQL> */
SQL> select 1 from dual;

1
----------
         1

如果注释出现在行首,那么只要不出现注释终结符*/,那么其他所有的命令、空回车等等全部无视。如果不了解这个特性,会直接认为SQLPLUS已经挂掉了。

 

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4227/viewspace-746122/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2007-12-29

  • 博文量
    1964
  • 访问量
    11076243