存储过程中
select name from user where id=1   直接赋给一个输出变量
如果是select * from user 就要创建包,要使用游标
问:select * from user where id=1   得到单条记录是否也要创建包,使用游标?
然后在asp中set rs = con.Execute
得到值rs(0)、rs(1)、rs(3)
请帮忙

解决方案 »

  1.   

    尽量不要用*,你可以把所有的列写出来,然后into到对应的变量中,只要保证是一条数据,你是不需要用游标的!
      

  2.   

    可以使用游标比较简单,
    如果实在不想用,就列出你想要的所有列名,然后INTO到对应的变量中即可。
      

  3.   

    当然不用了。
    例子:DECLARE
     v_s1 VARCHAR2(30);
     v_s2 VARCHAR2(30);
    BEGIN
     SELECT d.loc,dNAME INTO v_s1,v_s2 FROM scott.dept d WHERE deptno=10;
     dbms_output.put_line(v_s1||'-'||v_s2);
    END;
    /
      

  4.   

    谢谢大家的热心帮忙。
    要输出的字段满多的,那不是要在存储过程里定义很多输出参数?
    而且我用asp调用存储过程,也要写一堆语句来得到输出参数?
      

  5.   

    你可以使用rowtype类型定义一个变量,table1%rowtype