微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么ORACLE在命令中不允许连续的换行符?

如何解决为什么ORACLE在命令中不允许连续的换行符?

我不知道为什么,但是一个完全空白的行会终止sql * Plus中的命令。

引用SQL *Plus文档

:您可以通过以下三种方式之一结束sql命令:

  • 用分号(;)
  • 单独在一行上加上斜杠(/)
  • 用空行

您还可以更改使用SET sqlBLANKLInes处理空白行的方式

控制sql * Plus是否在sql命令或脚本中允许空行。ON将空行和换行解释为sql命令或脚本的一部分。OFF,认值,不允许在sql命令或脚本或脚本中出现空行或换行。

输入BLOCKTERMINATOR以停止sql命令输入,而无需运行sql命令。输入sqlTERMINATOR字符以停止sql命令输入并运行sql语句。

解决方法

我写的:

CREATE TABLE Person ( 
name CHAR(10),ssn INTEGER);

并将其保存到文件“ a.sql”。

如果我随后通过在SQL * Plus命令提示符下键入“ @a”来运行它,它将告诉我以“ ssn”开头的行不会被识别为命令,因此将被忽略。

据我所知,如果sqlplus在一行中遇到多个换行符,它似乎会终止命令。这是正确的说法吗?如果是这样,有谁知道这是否有必要/为什么选择这样做?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。