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

前端之家收集整理的这篇文章主要介绍了sql – 为什么ORACLE不允许命令中的连续换行符?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我写:

>:CREATE TABLE Person(
>:名称CHAR(10),
>:
>:ssn INTEGER);

并将其保存到文件“a.sql”(冒号表示行的开头,不在实际代码中.)

如果我然后在sql * Plus命令提示符下键入“@a”来运行它,它将告诉我以“ssn”开头的行不被识别为命令,并被忽略.

从我收集的内容来看,如果sqlplus连续遇到多个换行符,它似乎会终止命令.这是一个准确的陈述吗?如果是这样,有人知道这是否必要/为什么选择这样做?

解决方法

我不知道原因,但是一个完全空白的行终止了sql * Plus中的命令.

引自the SQL*Plus docs

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

>用分号(;)
>在一条线上单独使用斜杠(/)
>用一个空行

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

sqlBL[ANKLINES] {ON|OFF}

Controls whether sql*Plus allows blank lines within a sql command or script. ON interprets blank lines and new lines as part of a sql command or script. OFF,the default value,does not allow blank lines or new lines in a sql command or script or script.

Enter the BLOCKTERMINATOR to stop sql command entry without running the sql command. Enter the sqlTERMINATOR character to stop sql command entry and run the sql statement.

原文链接:https://www.f2er.com/mssql/76561.html

猜你在找的MsSQL相关文章