SQLPLUS执行PL/SQL语句块

Posted Happy2Share

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLPLUS执行PL/SQL语句块相关的知识,希望对你有一定的参考价值。

1.首先登录Oracle HR schema:

2.对于PL/SQL程序分号表示语句的结束;而使用 "."  号表示整个语句块的结束,也可以省略。按回车键后,该语句块不会执行,即不会发送到数据库服务器,而是必须使用 "/" 符号执行PL/SQL 语句块

使用 "/" 执行PL/SQL 语句块

3. 在上例中,虽然执行了PL/SQL 程序,但是没有输出结果的显示。数据库服务器肯定将数据传输给了SQLPLUS,并且变量var_first_name 和 var_last_name 都已经被复制,问题是结果没有显示在SQLPLUS上,解决办法是在执行上例中的PL/SQL 程序之前,执行如下命令:

此后,可以看到结果显示在SQLPLUS上:

 

总结:为了在SQLPLUS中看到PL/SQL 程序 执行的结果,需要:

1 . set serveroutput on

2. 在PL/SQL语句块末尾使用 "/" 执行PL/SQL语句块

 

severoutput 默认情况下是关闭的,为了 设置 set serveroutput on ,可以有以下办法:

1.每次手动输入 set serveroutput on ,手动开启。

2.在SQLPLUS 中的 glogin.sql 文件中加一条SQL语句: set serveroutput on;

此后,每次启动SQLPLUS 就会自动 run 这条语句,无需手动输入。

本地的glogin.sql 文件位置为: D:\\Oracle_Install_Dir\\app\\oracle\\product\\11.2.0\\server\\sqlplus\\admin\\glogin.sql

加了 set serveroutput on;之后的glogin.sql 文件如下:

 此时,在SQLPLUS中不需要手动输入set serveroutput on ,即可执行 PL/SQL语句块,看到结果。

3.可以编写一个触发器,一旦数据库登录即修改参数serveroutput 为 on.

 

以上是关于SQLPLUS执行PL/SQL语句块的主要内容,如果未能解决你的问题,请参考以下文章

sqlplus执行sql文件出错后继续

SQL Plus 无法识别 Oracle PL/SQL 语句

PL/SQL基础的执行部分

什么是PL/SQL

pl/sql连接Oracle不管执行啥语句都会重复执行这条语句,永不停止,怎么办呀

PL/SQL语法简介(匿名PL/SQL块)