dbms_output的简介

dbms_output的简介,第1张

Oracle推荐在debug PL/SQL程序时使用该程序包,不推荐使用该包来做报表输出或其他格式化输出之用。

概述

DBMS_OUTPUT包主要用于调试PL/SQL程序,或者在SQL*PLUS命令中显示信息(displaying message)和报表,譬如我们可以写一个简单的匿名PL/SQL程序块,而该块出于某种目的使用DBMS_OUTPUT包来显示一些信息。

在该DBMS_OUTPUT包中存在2个存储过程,它们是PUT_LINE和PUT过程,使用这2个Procedure可以做到将信息存放到PL/SQL的Buffer中,以便其他的触发器、存储过程、程序包来读取。在独立的PL/SQL程序或匿名块中,我们还可以使用GET_LINES和GET这2个存储过程来将存放在PL/SQL Buffer中的信息输出(display)到屏幕。

DBMS_OUTPUT包子程序摘要 DISABLE存储过程 禁用消息输出 ENABLE 存储过程 启用消息输出 GET_LINE 存储过程 从buffer中获取单行信息 GET_LINES 存储过程 从buffer中获取信息数组 NEW_LINE 存储过程 终结有PUT过程所创建的一行 PUT 存储过程 将一行信息放到buffer中 PUT_LINE 存储过程 将部分行信息放到buffer中 注意目前PUT过程已废弃,因为遗留问题将被保留,但不在推荐使用。

DISABLE存储过程

该存储过程用以禁用对PUT, PUT_LINE, NEW_LINE, GET_LINE, and GET_LINES过程的调用,并会清理buffer中任何残存信息。

与之相反的是ENABLE存储过程,若在SQL*PLUS中使用SERVEROUTPUT选项则不需要调用该存储过程。

语法

DBMS_OUTPUT.DISABLE

编译器指示

pragma restrict_references(disable,WNDS,RNDS)

ENABLE存储过程

该存储过程用以启用对PUT, PUT_LINE, NEW_LINE, GET_LINE, and GET_LINES存储过程的调用。

语法

DBMS_OUTPUT.ENABLE (

buffer_size IN INTEGER DEFAULT 20000)

编译指示

pragma restrict_references(enable,WNDS,RNDS)

参量 buffer_size Buffer长度的上限,单位为bytes字节。将buffer_size设置为NULL即指定没有限制

使用注意事项

当在SQL*PLUS总使用 SET SERVEROUTPUT选项时没有必要使用该过程若有多次对ENABLE过程的调用,那么buffer_size以最后指定的为准。当用户没有指定buffer size为NULL时,该参量的上限为1,000,000字节,而下限为2,000一般建议buffer size设置为NULL,10g中默认值使用20000以便兼容老的数据库版本。

GET_LINE 存储过程

该过程用以从buffer中获取单行信息。

语法

DBMS_OUTPUT.GET_LINE (

line OUT VARCHAR2,

status OUT INTEGER)

参量 line 将返回buffer中的一行信息,但不包括最后的换行符。一般建议申明该参数为VARCHAR2(32767)类型,以避免出现ORA-06502: PL/SQL: numeric or value error: character string buffer too small”.错误 status 若调用成功则返回0,若buffer中没有更多行的信息则返回1

使用注意事项

可以选择是从buffer中获取单行还是多行的数组信息。使用GET_LINE过程可以获取单行信息。从性能考虑,应当减少调用次数,使用GET_LINES函数直接从buffer中返回一个多行的数组若在使用SQL*PLUS则可以设置SET SERVEROUTPUT选项控制是否直接输出到屏幕在调用GET_LINE或GET_LINES后,任何行信息在下一次的PUT, PUT_LINE, or NEW_LINE前没有被获取的都将被丢弃,以避免误会

GET_LINES 存储过程

该存储过程用以从Buffer中获取一个多行的的数组

语法

DBMS_OUTPUT.GET_LINES (

lines OUT CHARARR,

numlines IN OUT INTEGER)

DBMS_OUTPUT.GET_LINES (

lines OUT DBMSOUTPUT_LINESARRAY,

numlines IN OUT INTEGER)

参量 lines 返回Buffer中多行信息的数组。该数组中每行的最大长度为32767bytes。 numlines 想要获取行的数量。在成功获取多行信息后,该过程将返回实际获取的行数。若返回的数字小于要求的值时,说明buffer中没有更多行的信息了。

使用注意事项:

可以选择是从buffer中获取单行还是多行的数组信息。使用GET_LINE过程可以获取单行信息。从性能考虑,应当减少调用次数,使用GET_LINES函数直接从buffer中返回一个多行的数组若在使用SQL*PLUS则可以设置SET SERVEROUTPUT选项控制是否直接输出到屏幕在调用GET_LINE或GET_LINES后,任何行信息在下一次的PUT, PUT_LINE, or NEW_LINE前没有被获取的都将被丢弃,以避免误会

数据库管理系统是一种 *** 纵和管理数据库的大型软件,是用于建立、使用和维护数据库,简称dbms。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过dbms访问数据库中的数据,数据库管理员也通过dbms进行数据库的维护工作。它提供多种功能,可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。它使用户能方便地定义和 *** 纵数据,维护数据的安全性和完整性,以及进行多用户下的并发控制和恢复数据库。

当前有SQL SERVER, DB2, Oracel, MYSQL,SYBASE, ACCESS等

1、数据库管理系统,就是一种以文件形式存储数据,表格 行和列的形式展现数据的系统,

2、常用的数据库软件有、oracle 数据库大中型项目使用、sqlserver数据库Windows环境 中小型软件项目使用、mysql数据库多数小型和个人项目使用,还有db2数据库大型超大型项目使用,oracle和mysql有linux和windows两种版本,sqlserver只有windows版本,开发者根据项目运行环境选择使用对应类型数据库。 当然以上是常用的数据库系统,还有很多其他的数据库管理系统 可以自行百度了解。

3、数据库系统是存储数据的,那我们通过各种方式去存储,去增改删查数据呢?

4、oracle常用客户端plsql developer,安装这个客户端还需要在客户端安装目录内配置instantclient插件,才能正常使用,

Mysql常用客户端navicat,安装好 配置连接mysql数据库 即可使用

Sqlserver数据库是windows环境的,自带集成管理界面,直接安装完数据库就能打开数据库 *** 作管理界面 *** 作数据了

5、以上是手动 *** 作管理数据库的方式,那如何通过程序来 *** 作数据呢?需要在程序中导入配置使用jdbc等,数据数据库 *** 作中间程序包,这样程序就能通过中间程序包连接 *** 作数据库数据了。

十年以前这么叫,DBMS。都是自己装到服务区上,自己的运维去管理。不过现在大多数业务都上云了,除了个别不开放的领域比如金融,其他都使用云服务了。数据库也是云服务,国内华为云,阿里云,腾讯云。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12160270.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存