第2章PL/SQL基本概念
相信守月亮
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
结构化异常处理
declare v_ename varchar2(30); --定义员工名称保存变量 begin --查询表中的员工名称 select ename into v_ename from emp where empno=&empno; dbms_output.put_line('员工名称为:'||v_ename); --异常处理块 excepti...转载 2019-03-29 15:52:50 · 184 阅读 · 0 评论 -
游标
分为两种: 1、隐式游标:由PL/SQL自动为DML语句或SELECT-INTO语句分配的游标,包括只返回一条记录的查询操作。 2、显式游标:在PL/SQL块的声明区域中显式定义的,用来处理返回多行记录查询的游标。 可以使用open、fetch和close语句来控制游标, open语句用来打开游标并使用游标指向结果集的第1行 fetch会检索当前行的信息并把游标指向下一行 clo...转载 2019-04-01 14:28:12 · 160 阅读 · 0 评论 -
触发器
与包或其他子程序不同的是,触发器不能被显示地调用,而是在数据库事件发生时隐式地运行的,并且触发器不能接收参数。 触发器是在某些特定的事件发生时被隐式执行的,比如在修改表、建立对象、登录数据库、操纵表数据时被执行。 触发器语句块被执行称为事件触发,而触发的事件可以是对数据库表的DML操作,比如insert、update或delete操作,或者是对视图的操作。 ...转载 2019-04-01 14:26:50 · 517 阅读 · 0 评论 -
员工加薪管理包代码
包通常由如下两部分组成: 1、包规范部分:包规范部分定义了应用程序的接口,它声明了类型、常量、变量、异常、游标和可以使用的子程序声明。 2、包体部分:包体用于实现包规范部分声明的子程序和游标。 包规范的建立使用create package语句,包体的建立使用create package body语句。 /*包规范定义*/ create or replace package empsala...转载 2019-03-27 15:04:35 · 415 阅读 · 0 评论 -
函数与过程最大的不同在于函数具有返回值,而过程没有。
过程、函数与包都属于PL/SQL语句块中的命名块,过程和函数统称为子程序。过程和函数非常相似,具有如下特点: 1、都具有名称,可以接收收入或传出参数。 2、都具有声明部分、执行部分和异常处理部分。 3、在使用前会被编译并存储到数据库中,可以使用Toad或Oracle SQL Developer 来查看数据库中已经存在的过程和函数。 注意: 函数与过程最大的不同在于函数具有返回值,而过程没...转载 2019-03-27 13:54:59 · 1148 阅读 · 0 评论 -
使用for循环打印九九乘法口诀表
--输出屏幕信息 set serveroutput on; --打印九九乘法口诀表 declare v_number1 number(3); --外层循环变量 v_number2 number(3); --内层循环变量 begin for v_number1 in 1..9 --...转载 2019-03-26 17:46:03 · 2526 阅读 · 0 评论 -
程序控制语句
create or replace function getaddsalaryratiocase(p_job varchar2) return number as v_resylt number(7,2); begin case p_job --使用case when 语句进行条件判断 when 'clerk...转载 2019-03-26 17:09:17 · 195 阅读 · 0 评论 -
变量与类型
declare v_deptname varchar2(10); --定义标量变量 v_loopcounter binary_integer; --使用PL/SQL类型定义标量变量 --定义记录类型 TYPE t_employee is record( empname varchar2(20), ...转载 2019-03-26 16:14:24 · 2368 阅读 · 0 评论 -
集合与记录
集合与记录都属于PL/SQL的复合类型,集合允许将类型相同的多个变量当作一个整体进行处理,类似于Java或C语言中的数组,记录允许将多个不同类型的变量当作一个整体进行处理。 使用记录类型获取员工信息 declare --定义记录类型 TYPE emp_info type is record( empname varchar2(10), job varchar(...转载 2019-03-29 16:34:01 · 323 阅读 · 0 评论 -
动态sql
比如要查询员工表中的员工名称,必须存在员工表、必须知道员工名的字段名称,同时具有相关的执行权限,并且使用这种SQL可以进行性能的调优,这种sql成为静态sql。 动态sql是指运行时由字符串拼合而成的sql,比如在PL/SQL块中不能执行DDL语句和DCL语句,那么可以使用execute immediate来执行动态拼合而成的sql语句。更常见的情形是在执行时才知道要查询哪个表中的数据,或者执行...转载 2019-04-01 15:04:30 · 256 阅读 · 0 评论
分享