如何在pl/sql中输出信息到控制台中.

liangwd 2004-04-23 03:21:20
我想在sqlplus中调用存储过程,存储过程的作用是查询数据库并显示.但是
不知道该如何将查询出来的信息显示出来.

谢谢!
...全文
1285 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolphoenix 2004-04-25
  • 打赏
  • 举报
回复
up
dinya2003 2004-04-24
  • 打赏
  • 举报
回复
dbms_output.put_line
Lulq21cn 2004-04-23
  • 打赏
  • 举报
回复
set serveroutput on;
dbms_output.put_line(变量);
LA003 2004-04-23
  • 打赏
  • 举报
回复
不知道你要的是不是这个
存储过程里面把要输出的变量加上
DBMS_OUTPUT.PUT_LINE('inf is ' || aaaaa);

在pl/sql 中,set serveroutput on

PL/SQL编程 pl/sql(procedural language/sql)是Oracle在标准的sql语言上的扩展。pl/sql不仅允许嵌入式sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误。这样使得他的功能变的更强大。缺点是移植性不好。 编写一个存储过程,向表添加数据。 1. create table mytest (name varchar2(30),passwd varchar2(30)); 2. create or replace procedure xxc_pro1 is begin insert into mytest values ('小红','m123'); end; 3. 调用过程 exec 过程名(参数1,参数2…)或call 过程名参数1,参数2…) ① exec xxc_pro1; 或者是 ② call xxc_pro1; pl/sql可以做什么? 块:包括过程、函数、触发器、包。 编写规范: 1. 注释 --:单行注释 eg:select * from emp where empno=7788;--取得员工信息 /*……*/多行注释 2. 表示符号(变量)的命名规范: ① 当定义变量时,建议用v_作为前缀:v_ename ② 当定义常量时,建议用c_作为前缀:c_rate ③ 当定义游标时,建议用_cursor作为后缀:emp_cursor ④ 当定义例外时,建议用e_作为前缀:e_error 块(block)是pl/sql的今本程序单元,编写pl/sql程序实际上就是在编写pl/sql块;pl/sql块由三部分组成:定义部分,执行部分,例外处理部分。 declare --可选部分 /*定义部分:定义常量,变量,游标,例外,复杂数据类型*/ begin --必选部分 /*执行部分:要执行的pl/sql语句和sql语句*/ exception --可选部分 /*例外处理部分:处理运行的各种错误*/ 实例1:只包含执行部分的pl/sqlSQL> set serveroutput on --打开输出 SQL> begin 2 dbms_output.put_line('hello'); 3 end; 4 / 说明:dbms_output是oracle提供的包,该包包含一些过程,put_line就是其之一。 实例2:包含定义部分和执行部分 SQL> declare 2 v_ename varchar2(5); 3 begin 4 select ename into v_ename from emp where empno = &no; 5 dbms_output.put_line('雇员名'||v_ename); 6 end; 7 / 说明:&:从控制台输入变量,会弹出一个对话框。 实例3.同时输出雇员名和工资 SQL> declare 2 v_ename varchar2(20); 3 v_sal number(10,2); 4 begin 5 select ename,sal into v_ename,v_sal from emp where empno=&no; 6 dbms_output.put_line('雇员名:'||v_ename||' 工资:'||v_sal); 7 end; 8 / 包含定义,执行,和例外处理的pl/sql块。 实例4.当输入的员工号不存在时 SQL> declare 2 v_ename varchar2(20); 3 v_sal number(10,2); 4 begin 5 select ename,sal into v_ename,v_sal from emp where empno =&no; 6 dbms_output.put_line('雇员名:'||v_ename||' 工资:'||v_sal); 7 exception --异常处理部分 8 when no_data_found then 9 dbms_output.put_line('请输入正确的员工号!'); 10 end; 11 / 以上为块的基础,下面来介绍块的各个组成:过程,函数,触发器,包。 过程 过程用于执行特定的操作,当执行过程的时候,可以指定输入参数(in),也可以指定输出参数(out)。通过在过程使用输入参数,可以讲数据输入到执行部分,通过使用输出参数,可以将执行部分的数据输出到应用环境,在pl/sql可以使用create procedure命令来创建过程。 编写一个存储过程,可以输入雇员名和新工资来改变员工工资。 --案例 create or replace procedure xxc_pro3(newname in varchar2,newsal in number) is begin update emp set sal=newsal where ename=newname; end;
《Oracle Database 11g初学者指南》能使读者快捷地掌握Oracle Database 11g的基础知识。通过自我评估教程,介绍了核心数据库技术、管理员职责、高可用性以及大型数据库特性。《Oracle Database 11g初学者指南》带领读者循序渐进地学习数据库设置、管理、编程、备份和恢复。还深入介绍了SQLPL/SQL。为了易于学习,这本独特的Oracle Press指南是这样组织的: 核心概念——Oracle Database 11g主题呈现在按逻辑组织的章节 主要内容——每章要介绍的具体内容列表 实践练习——演示如何应用在每章学到的关键技术 学习效果测试——对学习效果的快速自我评估 注意——与所介绍主题相关的额外信息 章节测验——每章结束时的测验测试读者对所学知识的掌握程度。 目录 第1章 数据库基础 1.1 数据库定义 1.2 Ofacle Database 11g的体系结构 1.2.1 控制文件 1.2.2 联机重做日志 1.2.3 System表空间 1.2.4 Sysaux表空间 1.2.5 默认的临时表空间 1.2.6 Undo表空间 1.2.7 服务器参数文件 1.2.8 后台进程 1.2.9 数据库管理员 1.3 Oracle Database 11g的基本数据类型 1.3.1 varchar2 1.3.2 数字 1.3.3 日期 1.3.4 时间戳 1.3.5 clob 1.3.6 blob 1.4 表 1.5 存储对象 1.5.1 视图 1.5.2 触发器 1.5.3 过程 1.5.4 函数 1.5.5 包 1.6 Oracle Database 11g的其他重要内容 1.6.1 索引 1.6.2 用户 1.6.3 表空间配额 1.6.4 同义词 1.6.5 角色 1.6.6 默认用户环境 1.7 对象和系统权限 1.7.1 select 1.7.2 insen 1.7.3 update 1.7.4 delete 1.7.5 系统权限 1.8 网格 1.9 综述 1.10 本章测验 第2章 Oracle安装 2.1 安装研究和安装计划 2.1.1 确定系统需求 2.1.2 Linux安装 2.2 操作系统设置 2.3 Linux简介 2.4 选择安装组件 2.5 安装Oracle软件 2.5.1 数据库配置助手 2.5.2 验证安装 2.6 综述 2.7 本章测验 第3章 OFacle网络连接 3.1 使用Omcle Net Services 3.1.1 网络协议 3.1.2 优化网络带宽 3.1.3 连接 3.1.4 保持连接 3.1.5 定义一个位置 3.2 专用和共享服务器体系结构之间的差别 3.2.1 专用服务器 3.2.2 共享服务器 3.2.3 设置分派进程 3.2.4 监视共享服务器的视图 3.3 定义连接 3.3.1 连接描述符 3.3.2 定义连接描述符 3.3.3 Oracle连接管理器 3.3.4 会话多路复用 3.3.5 防火墙访问控制 3.4 使用Oracle Net Listener 3.4.1 密码验证 3.4.2 多个监听进程 3.4.3 连接池 3.5 命名方法 3.5.1 目录命名方法 3.5.2 目录信息树 3.5.3 标识名 3.5.4 如何查找目录命名信息 3.5.5 网络服务别名条目 3.5.6 本地命名方法 3.5.7 简单命名方法 3.5.8 外部命名方法 3.5.9 使用哪种命名方法 3.6 使用Oracle配置文件 3.7 使用管理工具 3.7.1 OEM/网格控件 3.7.2 Oracle网络管理器 3.7.3 OEM控制台 3.7.4 OEM组件 3.7.5 Oracle网络配置助手 3.7.6 Oracle网络目录配置助手 3.7.7 命令行实用程序 3.7.8 Oracle高级安全选项 3.7.9 分派进程 3.8 使用配置文件 3.9 多层环境的网络 3.10 安装Oracle 11g客户端软件 3.11 本章测验 第4章 SQL:结构化查询语言 4.1 SOL语句的组成 4.1.1 DDL 4.1.2 DML 4.2 基本的insert和select语句 4.2.1 insert 4.2.2 select 4.3 简单的where子句 4.3.1 带and/or的where子句 4.3.2 带NOT的where子句 4.3.3 带搜索范围的where子句 4.3.4 带搜索列表的where子句 4.3.5 带模式搜索的where子句 4.3.6 where子句的常用操作符 4.4 基本的update和delete语句 4.4.1 update语句 4.4.2 delete语句 4.5 数据排序 4.6 函数:字符串函数、数字函数和聚集函数(不是分组) 4.6.1 字符串函数 4.6.2 数字函数 4.6.3 聚集函数 4.7 日期函数(格式化的和按时间排列的) 4.7.1 日期函数 4.7.2 特殊格式的日期数据类型 4.7.3 嵌套函数 4.8 连接(ANSI与Oracle对比):内连接、外连接、自连接 4.8.1 内连接 4.8.2 外连接 4.8.3 自连接 4.9 groupby和having子句 4.9.1 groupby 4.9.2 having 4.10 子查询:简单子查询和带连接的相关比较 4.10.1 简单子查询 4.10.2 带连接的相关子查询 4.11 集合操作符:union、intersect和minus 4.11.1 union 4.11.2 union all 4.11.3 intersect 4.11.4 minus 4.12 视图 4.13 序列 4.14 约束:与实体模型的联系、类型、延迟 4.14.1 与实体模型的联系 4.14.2 类型 4.14.3 延迟 4.15 用SQL*Plus进行格式化输出 4.15.1 页和行大小 4.15.2 页标题 4.15.3 页脚 4.15.4 格式化列 4.15.5 将SQL*Plus输出结果写入文件 4.16 本章 测验 第5章 PLSQL 5.1 PLSQL定义和使用PLSQL的原因 5.2 基本PLSQL编程结构 5.3 定义PLSQL数据类型 5.3.1 有效字符集 5.3.2 算术操作符 5.3.3 varchar2类型 5.3.4 数字类型 5.3.5 日期类型 5.3.6 布尔类型 5.4 在SQL*Plus编写PLSQL程序, 5.4.1 PLSQL程序SQL 5.4.2 PLSQL游标 5.4.3 游标For循环 5.5 PLSQL的异常处理 5.6 程序的控制结构 5.6.1 程序控制 5.6.2 IF逻辑结构 5.6.3 CASE语句 5.6.4 Loop循环 5.6.5 WHILE循环 5.6.6 FOR循环 5.7 如何创建存储过程以及创建存储过程的原因 5.8 函数的创建和使用 5.9 调用PLSQL程序 5.10 本章 测验 第6章 数据库管理员 6.1 了解DBA的工作 6.2 执行日常操作 6.2.1 体系结构和设计 6.2.2 容量规划 6.2.3 备份和恢复 6.2.4 安全 6.2.5 性能和调整 6.2.6 管理数据库对象 6.2.7 存储管理 6.2.8 变化管理 6.2.9 任务调度 6.2.1 0网络管理 6.2.1 1故障排查 6.3 OracleDatabase11g的基础结构 6.3.1 模式 6.3.2 存储结构 6.4 OracleDatabase11g的操作模式 6.4.1 操作模式 6.4.2 数据库和实例关闭 6.5 0EM使用初步 6.5.1 实例配置 6.5.2 用户会话 6.5.3 资源消费者组 6.5.4 模式、安全和存储管理 6.5.5 分布式管理 6.5.6 数据仓库特征 6.5.7 其他工具 6.6 数据库对象管理 6.6.1 控制文件 6.6.2 重做日志 6.6.3 撤消管理 6.6.4 模式对象 6.7 空间管理 6.7.1 归档日志 6.7.2 表空间和数据文件 6.8 用户管理 6.8.1 创建用户 6.8.2 编辑用户 6.9 数据库用户权限管理 6.9.1 授权 6.9.2 角色 6.9.3 配置文件 6.9.4 综述 6.10 本章 测验 第7章 备份与恢复 7.1 Oracle备份和恢复基本原理 7.1.1 从何处着手 7.1.2 备份的体系结构 7.1.3 Oracle二进制文件 7.1.4 参数文件 7.1.5 控制文件 7.1.6 重做日志 7.1.7 撤消段 7.1.8 检查点 7.1.9 归档日志 7.1.10 数据文件、表空间、段、分区和块 7.1.11 转储文件 7.2 0racle用户管理的备份和恢复 7.2.1 用户管理的备份类型 7.2.2 冷备份 7.2.3 热备份 7.2.4 从冷备份恢复 7.2.5 从热备份恢复 7.2.6 恢复的7个步骤 7.2.7 用备份控制文件进行恢复 7.3 编写数据库备份脚本 7.4 备份归档重做日志 7.5 Oracle Data Pump简介 …… 第8章 高可用性:RAC、ASM和Data Guand 第9章 大型数据库特性 附录 各章测验答案

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧