欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

orcal if 话语疑问

更新时间: 2014-01-05 02:12:03 责任编辑: Author_N1

 

Orcal IF 语句疑问
接触Oracle没多久,问个if语句的问题
比如:
declare 
bb varchar2(64);
begin
if 1=2 then
  select xx into bb from pub_table;
  update pub_table set xx ='1' 
end if;
end;

问:then之后有两个执行语句一个赋值,一个修改。两者之间没什么关系,我是随便写的。
(另外 如果单独写一条 select *from pub_table 在 if..end if 之间好像也不行,提示缺少into 关键字。。。Oracle if 有这样限制的么。。不能这样写么?)
但问题是,这样写好像通不过,if下面只能跟一个的么?因为 我如果写成:
declare 
bb varchar2(64);
begin
if 1=2 then
 begin
    select xx into bb from pub_table;
    update pub_table set xx ='1' 
 end;
end if;
end;
好像也通不过。
有谁知道有什么办法解么?或者有这方面的资料,百度了很久没找到答案,Oracle和sql这个差异有点弄不懂了。谢谢了各位~
--参考方法--
pl/sql 中不能直接 select * from dual; 数据, 要跟into 赋值。这不是if else的限制。
第二个报错,是因为你的pl/sql块实际上相当于
declare 
bb varchar2(64);
begin
end;

begin end;中间必须要跟执行的语句,哪怕是放 null;
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:12:03
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6876/
本文WWW.DOC100.NET DOC100.NET版权所有。