函数存储过程触发器精.ppt

上传人:石*** 文档编号:48325241 上传时间:2022-10-05 格式:PPT 页数:20 大小:876.50KB
返回 下载 相关 举报
函数存储过程触发器精.ppt_第1页
第1页 / 共20页
函数存储过程触发器精.ppt_第2页
第2页 / 共20页
点击查看更多>>
资源描述

《函数存储过程触发器精.ppt》由会员分享,可在线阅读,更多相关《函数存储过程触发器精.ppt(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、函数存储过程触发器函数存储过程触发器第1页,本讲稿共20页无参数函数的使用无参数函数的使用ncreate or replace function fun_zmxnreturn varchar2nis nspmc_name varchar2(50);nbeginn select spmc into spmc_name from cgmxb where rownum=1;return spmc_name;nend;n说明:into spmc_name表示把获取的数据给定义的参数第2页,本讲稿共20页有参数函数的使用有参数函数的使用ncreate or replace function fun_zm

2、x(param number)nreturn varchar2nis nname_sp varchar2(20);nbeginn select spmc into name_sp from cgmxb where mxid=param;n return name_sp;nend;第3页,本讲稿共20页按当前字段类型返回函数按当前字段类型返回函数ncreate or replace function fun_zmx(param user1.cgmxb.cj%type)nreturn user1.cgmxb.mxid%typenis nname_sp user1.cgmxb.mxid%type;n

3、beginn select avg(mxid)into name_sp from cgmxb where cj=param;n return name_sp;nend;n说明:user1.cgmxb.cj%type表示当前用户的表中字段的类型第4页,本讲稿共20页常用的系统函数常用的系统函数n字符串连接函数concatnselect mxid,concat(spmc,cj)from cgmxb n等价于nselect mxid,spmc|cj from cgmxb n字符串截取函数substrnselect mxid,substr(spmc,1,1)from cgmxb 第5页,本讲稿共20页

4、常用的系统函数常用的系统函数n大小写转换函数upper、lowern大写nselect mxid,upper(spmc)from cgmxb n小写nselect mxid,lower(upper(spmc)from cgmxb 第6页,本讲稿共20页常用的系统函数常用的系统函数n获取系统日期sysdatenselect sysdate from dualn日期格式转换nselect to_date(20010202,yyyy-mm-dd)from dualnto_date函数需要日期字符串n转换函数nselect to_char(sysdate,yyyy-MM-dd)from dual第7页

5、,本讲稿共20页常用的系统函数常用的系统函数n绝对值函数:absnselect abs(-2.36)from dualn向上取值ceilnselect ceil(2.36)from dualn向下取值floornselect floor(2.36)from dualn取模modnselect mod(8,3)from dual第8页,本讲稿共20页常用的系统函数常用的系统函数n次访换算powernselect power(2,3)from dual表示2的3次方n四舍五入换算roundnselect round(3.1415926,3)from dualn3表示精度(保留小数的位数)第9页,本

6、讲稿共20页分页方法比较分页方法比较nSELECT*FROM n(nSELECT A.*,ROWNUM RN nFROM(SELECT*FROM TABLE_NAME)A nWHERE ROWNUM=21n/nSELECT*FROM n(nSELECT A.*,ROWNUM RN nFROM(SELECT*FROM TABLE_NAME)A n)nWHERE RN BETWEEN 21 AND 40n第一种效率高于第二种第10页,本讲稿共20页存储过程存储过程存储过程具有如下特点:n1)存储过程是预编译过的,并且经优化后存储于SQL内存中,使用时无需再次编译,提高了工作效率;n2)存储过程的代

7、码直接存放于数据库中,一般由客户端直接通过存储过程的名字进行调用,减少了网络流量,加快了系统执行速度,例如在进行百万以上的大批量数据查询时,使用存储过程分页要比其他方式分页快得多;n3)使用存储过程可以减少SQL注入式攻击,提高了系统的安全性,执行存储过程的用户要具有一定的权限才能使用存储过程,没有数据操作权限的用户只能在其控制下间接地存取数据;第11页,本讲稿共20页存储过程存储过程)在同时进行主、从表及多表间的数据维护及有效性验证时,使用存储过程比较方便,而且可以有效利用SQL中的事务处理的机制;5)使用存储过程,可以实现存储过程设计和编码工作分开进行,只要将存储过程名、参数、及返回信息告

8、诉编码人员即可;6)但使用存储过程封装业务逻辑将限制应用程序的可移植性;另外,如果更改存储过程的参数或者其返回的数据及类型的话,需要修改应用程序的相关代码,比较繁琐。第12页,本讲稿共20页存储过程存储过程存储过程的定义:nCREATE OR REPLACE PROCEDURE procedure_name(parameter1 model datatype1,parameter2 model datatype2.)IS ASBEGIN PL/SQL Block;END procedure_name;n其中:其中:procedure_name是存是存储过储过程的名字,程的名字,paramete

9、r用于指定参数,用于指定参数,model用于指定参数模式,用于指定参数模式,datatype用于指定参数用于指定参数类类型,型,IS AS用于开始用于开始PL/SQL代代码块码块。n注:当定注:当定义义存存储过储过程的参数程的参数时时,只能指定数据,只能指定数据类类型,不能指定数据型,不能指定数据长长度度第13页,本讲稿共20页存储过程存储过程n1)建立存储过程时,既可以指定存储过程的参数,也可以不提供任何参数。n2)存储过程的参数主要有三种类型:输入参数(IN)、输出参数(OUT)、输入输出参数(IN OUT),其中IN用于接收调用环境的输入参数,OUT用于将输出数据传递到调用环境,IN O

10、UT不仅要接收数据,而且要输出数据到调用环境。n3)在建立存储过程时,输入参数的IN可以省略。第14页,本讲稿共20页存储过程存储过程-无输入参数无输入参数ncreate or replace procedure pro_zmx(param out user1.cgmxb.mxid%type)nas nbeginn select avg(mxid)into param from cgmxb where cj=北京;nend;第15页,本讲稿共20页存储过程存储过程-输入输出参数输入输出参数ncreate or replace procedure pro_zmx(param1 in user1.

11、cgmxb.cj%type,param out user1.cgmxb.mxid%type)nas nbeginn select avg(mxid)into param from cgmxb where cj=param1;nend;第16页,本讲稿共20页存储过程存储过程 in out参数参数ncreate or replace procedure pro_zmx(param in out user1.cgmxb.mxid%type)nas nbeginn select avg(mxid)into param from cgmxb where mxid=param;nend;第17页,本讲稿

12、共20页触发器触发器n当需要级联操作的时候可能用到触发器n语法:create or replace trigger 触发器名称n before|after insert or update or delete of 字段名称 on 表n beginn PL/SQL语句n end第18页,本讲稿共20页触发器触发器n表触发器n行触发器n表ncreate or replace trigger tri_zmxnafter insert on cgmxbnbeginn insert into cgb(cid,zdr)values(1,2);nend;ninsert into cgmxb(mxid,spmc,cj)values(112,2,3)第19页,本讲稿共20页触发器触发器n行ncreate or replace trigger tri_zmxnbefore insert on cgmxbnfor each rownbeginn select seq_zmx.nextval into:new.mxid from dual;nend;第20页,本讲稿共20页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁