1101课后作业


1、存储过程创建的语法

create or replace procedure sp_name()
is 

begin 
  --主体逻辑
  exception when others then 
     null
end sp_name;

2、自定义函数创建的语法

create or replace function  函数名(参数1 数据类型,参数2 数据类型……)
return 返回的数据类型  ---返回的如果是  varchar2 类型,也不能给长度
is ---is 或者 as 随便写一个都可以
   声明变量  ---声明变量的时候记得给长度
begin  
 函数的具体逻辑; 
 return 声明变量 ;--里面必须要有一个return子句
 ---异常处理
 exception when others then 
    dbms_output.put_line(sqlerrm); --将报错信息打印
    return 指定的默认值;
end;

3、调用存储过程或者调用自定义函数的理解,存储过程和自定义函数可以用来做什么事情;
调用存储过程

declare 
begin 
  存储过程();
end;

调用自定义函数

select 自定义函数() from table;

4、游标的理解,是怎么生明的,怎么取数的?

指向一个查询结果集的指针 用 cursor 关键字声明,用 for 循环自动打开游标循环取数,每循环一次就取一条数据出来

5、游标和循环有什么关系?

取游标的数据要用循环的方法去取

6、如果有一句sql 执行的很慢,该怎么提高这句代码的执行性能?

1.从执行计划分析,分析关联机制,看看关联机制是否是最合适的关联机制,可以通过 扫描方式分析,索引扫描,全表
2.数据量 :分区表 ,范围分区(按照日期 天 周 月) 列表分区(产品 部门 区域)
3.sql 写法: 先过滤,再关联 再分组 ,exists 代替 in
4 物化视图:
5 with as

7、日志表有什么作用,在一个程序中怎么实现日志信息的记录的?

记录程序的调用信息,报错信息
在主程序中调用 写日志功能的存储过程 把我们想要记录的日志信息插入到日志表中

8、如果一个程序报错了,我们该怎么做?

编译的时候报错:edit 模式 在报错的代码附近,分析,看看哪里写的有问题
调用时候报错: 看日志表中记录的报错信息

9、如果有一个数据加工的存储过程处理出来的数据和预想的不一致,有差异,我们该怎么检查

找到数据加工的来源逻辑,将程序的入参套进去,具体分析,结合代码和数据一起分析

10、谈谈你对包 package 的理解;

包里封装的是存储过程,就是把同一个模块/功能所涉及到的存储过程放在一起,方便管理
调用: 包名称.存储过程

11、如何调用封装在 包里的程序?

调用: 包名称.存储过程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

只会HelloWorld的华娃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值