全球旧事资料 分类
7删除过程DROPPROCEDURE过程名
f二函数FUNCTIONCREATEORREPLACEFUNCTIONfu
ctio
_
amearg1model1datatype1arg2model2datatype2RETURNdatatypeISASPLSQLBlockarg1arg2指定函数的参数当不指定参数数据类型时不能指定其长度RETURN指定函数返回的数据类型注意函数前面必须要有RETURN子句在函数体内至少含有一条RETURN子句函数的参数MODEl和过程的一样1不带参数的函数CREATEORREPLACEFUNCTIONget_userRETURNVARCHAR2ISv_userVARCHAR2100BEGINSELECTuser
ameINTOv_userFROMuser_usersRETURNv_userEND调用方法SQLvarv1VARCHAR2100SQLexecv1get_userSQLPRINTv12带IN参数CREATEORREPLACEFUNCTIONget_sal
ameINVARCHAR2RETURNNUMBERISv_salempsalTYPEBEGINSELECTsalINTOv_salFROMempWHEREuppere
ameupper
ameRETURNv_salEXCEPTIONWHENNO_DATA_FOUNDTHENraiseapplicatio
_error20000该雇员不存在END调用方法如下SQLvarsalNUMBERSQLexecsalget_salscottSQLpri
tsal3带OUT参数一般情况下函数只需要单个返回数据如果希望使用函数同事返回多个数据就需要用到输出参数了CREATEORREPLACRFUNCTIONget_i
fo
ameVARCHAR2titleOUTVARCHAR2
fRETURNVARCHAR2ASdept
amedeptd
ameTYPEBEGINSELECTajobbd
ameINTOtitledept
ameFROMempadeptbWHEREadept
obdept
oANDupperae
ameupperae
ameRETURNdept
ameEXCEPTIONWHENNO_DATA_FOUNDTHENraise_applicatio
_erro20000雇员不存在END由于此函数带有OUT参数所以要定义变量接收OUT参数和函数的返回值SQLvarjobvarchar220SQLvard
amevarchar2920SQLexecd
amegeti
foscottjobSQLpri
td
amejob4带INOUT参数在调用函数之前需要通过变量给该种参数传递数据CREATEORREPLACEFUNCTIONresult
um1NUMBER
um2INOUTNUMBERRETURNNUMBERASv_resultNUMBER6v_remai
NUMBERBEGINv_result
um1
um2v_remai
MOD
um1
um2
um2v_remai
RETURNv_resultEXCEPTIONWHENZERO_DIVIDETHENraise_applicatio
_error20000不能除0END执行如下SQLvarresult1NUMBERSQLvarresult2NUMBERSQLexecresult230SQLexecresult1result100result2SQLpri
tresult1result25函数的删除DROPFUNCTION函数名
f三子程序的管理列出当前用户的子程序数据字典视图USER_OBJECTS显示当前用户所包含的所有对象可以列出用户的表视图索引也可以列出用户的过程函数等SELECTobject_
amecreatedstatusFROMuser_object2WHEREobject_typeINPROCEDUREFUNCTION
fr
好听全球资料 返回顶部