您的位置:首页技术文章

ORACLE中dbms_output.put_line输出问题的解决过程

【字号: 日期:2023-03-08 16:56:46浏览:2作者:猪猪
目录
  • 前言
  • 1. 开启oracle输出
  • 2. 用sqlplus 登陆oracle
  • 3. pl/sql执行输出语句
  • 总结

前言

最近写了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的窗口。点击即可看到。就这当时还懵圈了 哎。

总结

到此这篇关于ORACLE中dbms_output.put_line输出问题解决的文章就介绍到这了,更多相关ORACLE dbms_output.put_line输出内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

标签: Oracle