PL/SQL 中IN 和OUT和%TYPE指什么意思

来源:百度知道 编辑:UC知道 时间:2024/06/21 07:27:38
比如:
chr_dev_mst_cd IN tev_evnt.dev_mst_cd%TYPE,
rtb_detail_sou OUT typ_rtb_detail,

IN :
当过程被调用时,实参的值将传入该过程。在该过程内部,形参类似PL/SQL使用的常数,即该值具有只读属性不能对其修改。当该过程结束时,控制将返回到调用环境,这时,对应的实参没有改变
总得来说就是外部调入,内部调用,但是不能修改,可以有默认值。
OUT:
当过程被调用时,实参具有的任何值将被忽略不计。在该过程内部,形参的作用类似没有初始化的PL/SQL变量,其值为空( NULL)。该变量具有读写属性。当该过程结束时,控制将返回调用环境,形参的内容将赋予对应的实参。
在过程中写入,之后可以将其返回。

IN OUT:
该模式是模式IN 和OUT的组合。当调用过程时,实参的值将被传递到该过程中。在该过程内部,形参相当于初始化的变量,并具有读写属性。当该过程结束时,控制将返回到调用环境中,形参的内容将赋予实参
%TYPE是指这个参数和 teb_evnt表中dev_mst_cd属性的类型一致。

还有%ROWTYPE是指这个参数和一行的属性的类型一致。