oracle存储过程select语句必须带into吗

存储过程select语句必须带into吗好像sqlserver可以啊。我看到的例子:CREATEPROCEDUREdbo.GetProductsByCategory(@C... 存储过程select语句必须带into吗
好像sql server可以啊。我看到的例子:
CREATE PROCEDURE dbo.GetProductsByCategory ( @CategoryID int ) AS SELECT * FROM Products WHERE CategoryID = @CategoryID怎么回事
展开
 我来答
badkano
2015-12-27 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144776 获赞数:885373
团长

向TA提问 私信TA
展开全部

oracle存储过程select语句必须带into。因为要将查询结果放到变量中,如以下存储过程:

create or replace procedure p_test
as
v_begintime varchar2(20);
v_endtime varchar2(20);
v_str varchar2(10);
begin
  v_begintime:=to_char(sysdate,'yyyy-mm-dd hh24:mi:ss');
  select 'badkano' into v_str from dual;
  v_endtime:=to_char(sysdate,'yyyy-mm-dd hh24:mi:ss');
  dbms_output.put_line('开始时间为:'||v_begintime);
  dbms_output.put_line('结束时间为:'||v_endtime);
end;

其中select 'badkano' into v_str from dual;此句就是将“badkano”放入变量“v_str”中。

百度网友183c468
2014-02-08 · TA获得超过209个赞
知道小有建树答主
回答量:267
采纳率:0%
帮助的人:128万
展开全部
是的,在存储过程中也不可能有单独查询而不返回结果的情况啊。
所以必须使用INTO子句返回一个结果,以便在存储过程中使用它。
追问
好像sql server可以啊。我看到的例子:
CREATE PROCEDURE dbo.GetProductsByCategory ( @CategoryID int ) AS SELECT * FROM Products WHERE CategoryID = @CategoryID怎么回事
追答
sqlserver没接触过啊,不过我想,那大概是获取结果集的方法。
在ORACLE中不能如此获得结果集,所以不一样的。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-02-08
展开全部
如果是传值的话 必须into
如果想得到 结果的话 可以 在查询前 使用 open result for 查出结果
追问
好像sql server可以啊。我看到的例子:
CREATE PROCEDURE dbo.GetProductsByCategory ( @CategoryID int ) AS SELECT * FROM Products WHERE CategoryID = @CategoryID怎么回事
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
苏卜凡TEMPO
2014-02-08
知道答主
回答量:8
采纳率:0%
帮助的人:3.1万
展开全部
不是啊,语法有问题,干脆不用 VV,试试这个:
SELECT * FROM "T_SBRECORD_copy" WHERE SB_ID=(SELECT SB_ID FROM "T_SBRECORD_copy" WHERE SB_ID=spName);
追问
其实是提示:
select * from T_SBRECORD_copy where sb_id=vv那句错误
追答
对了,是想用存储过程返回一张表吗?
那把select * from T_SBRECORD_copy where sb_id=vv这句改成:
exec("select * from T_SBRECORD_copy where sb_id="+vv)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式