我刚刚学,请大家不要笑话,问题如下:
create or replace procedure class_course
iscursor cur_a is select * from yxy_class;
cr yxy_class%ROWTYPE;
begin
IF NOT cur_a%ISOPEN
THEN
OPEN cur_a;
END IF; while cur_a%found
loop
fetch cur_a into cr;
end loop;
close cur_a; end class_course;请问如果我把select * from yxy_class; 改成select aa from yxy_class这样就和cr类型的列对不上了,应该怎么处理,还有就是,如果我要用java调用的话
proc.execute();
rs = (ResultSet)proc.getObject(3);
但我如果不知道有多少列的话,getObject(3)这个方法应该怎么写呢?
希望大家帮助小弟!!
create or replace procedure class_course
iscursor cur_a is select * from yxy_class;
cr yxy_class%ROWTYPE;
begin
IF NOT cur_a%ISOPEN
THEN
OPEN cur_a;
END IF; while cur_a%found
loop
fetch cur_a into cr;
end loop;
close cur_a; end class_course;请问如果我把select * from yxy_class; 改成select aa from yxy_class这样就和cr类型的列对不上了,应该怎么处理,还有就是,如果我要用java调用的话
proc.execute();
rs = (ResultSet)proc.getObject(3);
但我如果不知道有多少列的话,getObject(3)这个方法应该怎么写呢?
希望大家帮助小弟!!
create or replace procedure class_course is cursor cur_a is
select aa from yxy_class;
cr yxy_class.aa%TYPE;
begin IF NOT cur_a%ISOPEN THEN
OPEN cur_a;
END IF; while cur_a%found loop
fetch cur_a
into cr;
end loop;
close cur_a;end class_course;
Line: 5
Text: cr yxy_class.nianji%ROWTYPE;Error: PL/SQL: Item ignored
Line: 5
Text: cr yxy_class.nianji%ROWTYPE;Error: PLS-00320: 此表达式的类型说明不完整或格式不正确
Line: 16
Text: fetch cur_a into cr;Error: PL/SQL: SQL Statement ignored
Line: 16
Text: fetch cur_a into cr;
proc = conn.prepareCall("{ call class_course() }");
proc.execute();
rs = (ResultSet)proc.getObject(1);
while (rs.next()) {
System.out.println("年级是="+rs.getObject("nianji") );
}
这又是为什么呢?