存储过程中参数主要有三种模式:IN、OUT、IN OUT。
IN : 调用过程的时候,实际参数的值就会传递到该过程中。在过程内部,形式参数就像PL/SQL的常量一样-----它会被看作是只读且不能更改的。当过程执行完毕,程序的控制返回到调用环境的时候,实际参数的值也不会有任何改变。
OUT:调用过程的时候,会忽略所有实际参数的值。在过程内部,形式参数就像未初始化的PL/SQL变量一样,也会有一个NULL值。形式参数的值既可以读取,也可以写入。过程执行完成以后,控制就会返回到调用环境,同时会将形式参数的值赋给实际参数。(这种行为方式可以使用修饰语NOCOPY进行更改)
IN OUT:这是IN和OUT的复合模式。调用过程的时候,实际参数的值会传递到过程中。在过程内部,形式参数就像初始化以后的变量,可以读取和写入。过程结束以后,控制会返回到调用环境,同时会将形式参数的内容分配给实际参数(受修饰语NOCOPY的限制,就像OUT模式一样)