java | (十九)oracle数据库(3)视图、PL/SQL、逻辑语句、%TYPE和%ROWTYPE、函数/存储过程、触发器

本文介绍了Oracle数据库中的视图创建、删除以及PL/SQL的基础,包括%TYPE和%ROWTYPE类型、逻辑判断语句。还探讨了函数、存储过程的使用,并详细阐述了触发器的分类和事务处理的概念及其操作。
摘要由CSDN通过智能技术生成

视图

关系视图
creatr or replace view view_name as select 表 or 其他视图

create or replace view view_emp_table_emp as
select * from emp;

只读视图

create view view_sales as
select sales.id,sales.goods,sales.selldate from sales with read only;

不能更改只读视图的数据

删除视图
drop view 视图名称

PL/SQL

PL/SQL是过程化SQL语言,是对SQL语句的拓展,增加了编程语言的特点,所以PL/SQL就是把数据库操作和查询语句组织在PL/SQL代码的过程性单元中,通过逻辑判断、循环等操作实现复杂的功能,在定义复杂业务的函数、过程及建立触发器时使用。
PL/SQL中通常只能使用数据DML(数据操纵)语言和DCL(数据控制)语言,诸如:insert、update、select into、delete、commit、rollback、savepoint。不允许使用DDL(数据定义)语言create、drop、alter…

PL/SQL基本结构

declare
       name string(43);
       age int:=12;--初始值
begin
     name:='风小田';
     age:=age + 1;
     dbms_output.put_line('名字:'||name);
end;

结果(在输出 显示):
在这里插入图片描述
异常处理

declare 
        n int:=21;
        m int;
        s int;
        err_zir exception;
        pragma exception_init(err_zir,-1476); 
begin
     m:=0;
     s:= n / m;
     dbms_output.put_line('结果是'||to_char(s));
     exception when err_zir then 
     dbms_output.put_line('0不能做除数!');
end; 

输出:
在这里插入图片描述

Oracle%TYPE和%ROWTYPE类型

emp表
在这里插入图片描述

declare 
        v_empName emp.name %type;
        v_emp emp%rowtype;
begin
     select e.name into v_empName from emp e where e.sid = 1;
     dbms_output.put_line(v_empName);
     select * into v_emp from emp e where e.sid = 1;
     dbms_output.put_line('工号'||v_emp.sid||',名字'||v_emp.name);
end;

结果:
在这里插入图片描述
(这个知识点是后面不上的,参照这个链接

逻辑判断

if-else语句/if-elsif语句

declare
       age int:=15;
       message string(64):='是成年人';
       message2 string(64):='是未成年人';
begin
     if age > 18 then
        dbms_output.put_line(message);
        else
            dbms_output.put_line(message2);
        end if;
end;

declare 
        score number:=34;
begin
     if(s
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值