oracle 的if语句

我在使用insert语句插入一行记录后,运行如下代码,应该如何纠正?SQL>begin2if(selectidfromtest)>03thenrollback;4else... 我在使用insert语句插入一行记录后,运行如下代码,应该如何纠正?
SQL> begin
2 if (select id from test)>0
3 then rollback;
4 else
5 commit;
6 end if;
7 end;
8 /
if (select id from test)>0
*
第 2 行出现错误:
ORA-06550: 第 2 行, 第 5 列:
PLS-00103: 出现符号 "SELECT"在需要下列之一时:
( - + case mod new not
null <an identifier> <a double-quoted delimited-identifier>
<a bind variable> continue avg count current exists max min
prior sql stddev sum variance execute forall merge time
timestamp interval date
<a string literal with character set specification>
<a number> <a single-quoted SQL string> pipe
<一个带有字符集说明的可带引号的字符串文字>
<一个可带引号的 SQL 字符串> purge
ORA-06550: 第 2 行, 第 25 列:
PLS-00103: 出现符号 ">"在需要下列之一时:
) , and or
展开
 我来答
百度网友0319a0e
2013-06-30 · TA获得超过2.2万个赞
知道小有建树答主
回答量:2080
采纳率:85%
帮助的人:1149万
展开全部
if 语句 是逻辑表达式,而不是一个查询语句
追问
我是想拿查询得到的结果和0做比较啊,大于0就取消插入,小于0就提交,怎样才能实现?
追答
declare 

v_sql int;
begin

v_sql:=1;
if v_sql=1 then
...
end;

我想你已经知道了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式