`

简单的存储过程--输出语句

 
阅读更多

--一个简单输出字符串的pl/sql语句
create or replace procedure smpl_output is
begin
--Hello World!必须用单引号,
--是字符,不是字符串
dbms_output.put_line('Hello World!');
end;

sql>set serveroutput on;--设置可以输出
sql>exec smpl_output;--i调用存储过程

===第二个例子(有定义部分和执行部分),这个是基于Oracle中自带的emp==

--有定义和执行部分的存储过程
declare
--定义变量
v_ename varchar2(5);
begin
--执行部分,&是一个地址符表示用户输入员工工号给no后就将该值传递给empno了
select ename into v_ename from emp where empno=&no;
--在控制台上输出用户名
dbms_output.put_line('用户名:'||v_ename);
end;

==第三个例子输入工号,输出员工姓名和薪资(此处限定返回的结果集只是一条,如果是多条的话,就必须使用游标了)==

--有定义和执行部分的存储过程
--输入员工工号,就可以从emp表中查出员工姓名和员工薪资
--并输出查询到的员工姓名和薪资
declare
--定义部分
v_ename varchar2(5);
v_sal number(7,2);
begin
--执行部分
select ename,sal into v_ename,v_sal from emp where empno=&no;
--输出员工姓名和薪资到控制台
dbms_output.put_line('员工姓名:'||v_ename||',员工薪资:'||v_sal);
end;

==第四部分,关于例外处理,有时候,操作如果没有按正常的控制结构走,出现了例外,而我们刚好有一些特殊的业务逻辑放到例外中处理很合适=

--有定义、执行部分及例外处理部分的存储过程
--输入员工工号,就可以从emp表中查出员工姓名和员工薪资
--并输出查询到的员工姓名和薪资
declare
--定义部分
v_ename varchar2(5);
v_sal number(7,2);
begin
--执行部分
select ename,sal into v_ename,v_sal from emp where empno=&no;
--输出员工姓名和薪资到控制台
dbms_output.put_line('员工姓名:'||v_ename||',员工薪资:'||v_sal);
--异常处理部分
exception
--如果找不到数据
when no_data_found then
--就输出错误信息!
dbms_output.put_line('找不到数据!');
end;

分享到:
评论

相关推荐

    MySQL SQL高级特性-存储过程-触发器-事务

    调用存储过程时使用call语句,同时可以指定输入参数和获取输出参数。 二、触发器 触发器是一种特殊类型的存储过程,它会自动执行响应表上的特定数据库事件,如INSERT、UPDATE或DELETE。触发器可以实现复杂的业务...

    数据库的存储过程

    在本文中,我们将深入探讨存储过程的基本理念、语法以及常见的实现方式,特别是如何利用存储过程进行简易的存储分页。 一、存储过程的基本理念 存储过程的概念最早由IBM在1970年代的System R数据库管理系统中提出...

    IF-ELSE条件语句的翻译程序设计(LR方法、输出三地址表示)

    本主题主要探讨如何运用LR方法来处理IF-ELSE条件语句,并将其转化为输出三地址码的形式,以实现程序的高效执行。下面将详细阐述这两个概念以及它们在编译器设计中的应用。 首先,我们来看IF-ELSE条件语句。这是控制...

    存储过程扩展学习

    存储过程是数据库中预编译的SQL语句集合,它是一种可重复使用的代码段,用于执行特定数据库操作。在SQL Server中,存储过程分为不同种类,包括用户定义的存储过程、系统存储过程、临时存储过程以及扩展存储过程。 1...

    带输出参数的存储过程

    以下是一个简单的示例,展示如何创建一个带有输出参数的存储过程: ```sql CREATE PROCEDURE GetMaxId (@maxId INT OUTPUT) AS BEGIN SELECT @maxId = MAX(Id) FROM TableName; END; ``` 在这个例子中,`@maxId` ...

    oracle存储过程实例

    调用存储过程通常使用`CALL`语句,但某些情况下(如只有输出参数的情况),需要在PL/SQL块中调用。 - 无参数过程: ```sql CALL stu_proc(); ``` - 仅有输入参数的过程: ```sql CALL stu_proc(输入参数值); ``` - ...

    MySQL存储过程

    4. **减少网络流量:** 调用存储过程只需发送一个简单的命令,而非整个SQL语句,这有助于减轻网络负载。 5. **安全性:** 可以通过限制存储过程的调用来控制数据访问权限,确保数据安全。 #### 三、存储过程的缺点 ...

    IF-ELSE条件语句翻译(简单优先法、输出三地址表示)

    本篇文章将深入探讨IF-ELSE条件语句的“简单优先法”翻译以及其在“输出三地址表示”中的应用。 首先,简单优先法是一种将高级语言中的表达式转换为低级语言(如汇编或机器语言)的方法。在处理IF-ELSE条件语句时,...

    IF-ELSE条件语句的翻译程序设计(简单优先法、输出四元式)

    本篇文章将深入探讨一个特定的编译器设计问题:如何用简单优先法来处理IF-ELSE条件语句,并通过输出四元式来实现这一过程。在编译原理课程设计中,这个主题是理解和实践编译器工作原理的关键部分。 首先,我们来看...

    oracle存储过程详解-开发技术

    3. **增强安全性**:存储过程可以隐藏复杂的业务逻辑,对外提供简单的接口,从而增强了系统的安全性。 4. **代码重用性**:存储过程可以被多个应用程序共享,避免了重复编写相同的代码。 #### 三、Oracle存储过程的...

    mysql存储过程教程

    MySQL存储过程是数据库管理系统中的一种重要功能,它允许开发者预编译一系列SQL语句并封装成一个可重复使用的单元,从而提高数据处理的效率和代码的复用性。本教程将深入探讨MySQL存储过程的创建、调用以及相关概念...

    数据库原理及应用实验四(存储过程和触发器)

    在创建存储过程之前,首先通过T-SQL的`IF EXISTS`语句检查该存储过程是否存在,如果存在则先删除并输出“已删除!”信息,否则输出“不存在,可创建!”的信息。 创建存储过程的语法如下: ```sql CREATE PROCEDURE...

    使用SQL语句创建存储过程

    1. 创建简单存储过程 在示例中,我们创建了一个名为`stu_pr`的存储过程,用于查询班级`051`的所有学生信息,包括基本信息和选课信息。在创建之前,首先通过`IF EXISTS`检查存储过程是否存在,如果存在则删除并提示...

    SQL存储过程

    SQL存储过程是数据库管理系统中一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该过程需要参数)来调用执行。在SQL Server 2000中,存储过程扮演着重要的...

    高级T-SQL语句

    在SQL Server中,T-SQL(Transact-SQL)是扩展了标准SQL的编程语言,用于管理和操作数据库。...这些语句不仅在简单的查询中发挥作用,也是编写复杂存储过程和触发器的基础,对提升SQL编程技能至关重要。

    存储过程1--清华大学计算中心ORACLE培训资料.pptx

    创建存储过程使用`CREATE PROCEDURE`语句,可以指定过程名、输入/输出参数等。语法结构为: ```sql CREATE OR REPLACE PROCEDURE 过程名 (参数1 数据类型, 参数2 数据类型, ...) BEGIN -- 代码块 END 过程名; ``` ...

    SQLserver存储过程语法及实例

    存储过程是一组为了完成特定功能的SQL语句集合,它可以接受输入参数并可返回输出参数,还可以包含逻辑控制流程,比如条件判断、循环、分支等。SQL Server中的存储过程与程序设计语言类似,具有自己的数据类型、流程...

    执行带回参动态SQL的带回参存储过程

    不同于输出参数,回参是通过`RETURN`语句来设置的,其值在存储过程的执行过程中只能设置一次。例如: ```sql CREATE PROCEDURE CheckAge @age INT AS BEGIN IF @age RETURN 0; -- 表示未达到年龄要求 ELSE ...

    mysql 查询存储过程的 sql 语句.docx

    通过使用存储过程,开发者可以在一次操作中执行多个 SQL 语句和逻辑处理。 #### 二、创建存储过程 创建存储过程需要用到 `CREATE PROCEDURE` 语句。以下是一个简单的示例: ```sql CREATE PROCEDURE ...

Global site tag (gtag.js) - Google Analytics