导读 最近用dbms_output.put_line来输出变量的一些信息,却总是看不到结果,所以这篇文章主要给大家介绍了关于ORACLE中dbms_output.put_line输出问题的解决过程,需要的朋友可以参考下
前言

最近写了oracle过程,有个ORACLE中dbms_output.put_line输出不了的问题。 花了近一个小时。下面描述一个这解决问题的历程(查资料与解决):

1. 开启oracle输出

查了资料,说是oracle默认是关闭的。 要执行 :

set serveroutput on;

才可以,于是在pl/sql develope中执行该语句,报错,原因: pl/sql不支持。

解决: 在windows cmd 中执行 sqlplus 命令

2. 用sqlplus 登陆oracle
1、开始在cmd 里执行: sqlplus /nolog

报错: 大意是 无此命令

大体原因: 没有安装oracle客户端,或者是环境变量出现了问题。

解决: 我的是重新安装了oralce客户端, 然后需要看下环境变量里边有没有这个变量,没有的话要手动加上,一般重新安装都是有的。

2、执行sqlplus/nolog

然后输入oracle链接信息 。我这里是链接远程的数据库

格式:sqlplus user/pwd@host_ip:port/实例名

示例:sqlplus xxgx/xxxx@101.101.xx.xx:1521/orcl

登陆远程的原因,会有稍微停顿,连接上去以后。 可以执行 show user; 显示当前用户。

正确显示说明登陆成功。

附加: 查看当前用户下的所有表:

select TABLE_NAME from USER_TABLES;

至此sqlplus成功登陆。

3. pl/sql执行输出语句

执行:

--pl/sql编程语言
--pl/sql编程语言是对sql语言的扩展,使得sql语言具有过程化变编程的特性。
--pl/sql编程语言比一般的过程化编程语言,更加灵活高效。
--pl/sql编程语言主要用来编写存储过程和存储函数等。
 
--生命方法
--赋值操作可以使用=: 也可以使用into查询语句赋值。
 
declare
          i number(2) := 10 ;
          s varchar2(10) := '哈dd哈' ;
          ena XXGX_TJ_RBBTJ.SYS_TIME%type ; -- 引用型变量
begin
          dbms_output.put_line(i);
          dbms_output.put_line(s);
          select SYS_TIME into ena from XXGX_TJ_RBBTJ where ID = 1000060;
          dbms_output.put_line(ena);
end;

显示:

这里要说的就是 这个输出啊,开始找半天没找到在哪输出,就在SQL旁边有个Output的窗口。点击即可看到。就这当时还懵圈了 哎。

原文来自:https://www.jb51.net/article/253273.htm

本文地址:https://www.linuxprobe.com/oracle-dbms-output.html编辑:倪家兴,审核员:逄增宝

Linux命令大全:https://www.linuxcool.com/

Linux系统大全:https://www.linuxdown.com/

红帽认证RHCE考试心得:https://www.rhce.net/