oracle中的rowtype的使用
CREATE OR REPLACE FUNCTION A_Test1 RETURN VARCHAR2 is OBJ_MARK BP_MARK%ROWTYPE; BEGIN SELECT * INTO OBJ_MARK FROM BP_MARK WHERE PID='922'; RETURN OBJ_MARK.MARK_NO; EXCEPTION WHEN OTHERS THEN RETURN '错误'; END A_Test1;
rowtype 就是表示数据类型是某个表的行类型。
例如上面的 OBJ_MARK BP_MARK%ROWTYPE 意思是定义一个变量 OBJ_MARK,它的类型是 BP_MARK 表类型
赋值的时候,只能把一行的数据赋值给 ROWTYPE(没有数据或者多行数据都会报错)
取值的时候,直接使用 OBJ_MARK.某个字段 就能获取到值了