• 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_Dirapporacleproduct11.2.0serversqlplusadminglogin.sql

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

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

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

  • 相关阅读:
    《软件方法》读书笔记2
    《代码阅读方法与实践》读书笔记3
    课堂讨论记录
    《代码阅读方法与实践》读书笔记2
    [洛谷] P1948 [USACO08JAN]Telephone Lines S(二分+SPFA)
    2020 CCPC秦皇岛 正式赛题解
    [洛谷] P3146 [USACO16OPEN]248 G (区间DP)
    [进阶指南] 最大子序和
    [训练] 图的K步移动最大收获
    [计蒜客] 受力平衡(组合数学 + 乘法逆元)
  • 原文地址:https://www.cnblogs.com/luffystory/p/10165830.html
Copyright © 2020-2023  润新知