存储过程 IF.THEN 的有关问题

存储过程 IF....THEN 的问题在存储工程中1个IF后可不可以跟两个结果可以的话该这么写?比如IF v_date:201

存储过程 IF....THEN 的问题
在存储工程中
1个IF后可不可以跟两个结果
可以的话该这么写?
比如IF v_date:='20130101'
    then v_table='2012_12;
         v_date='20121231'+1
这样写可以吗?
[解决办法]
IF v_date ='20130101'     then 
   v_table='2012_12;
   v_date='20121231'+1;
end if;

这样写
[解决办法]

引用:
IF v_date ='20130101'     then 
   v_table='2012_12;
   v_date='20121231'+1;
end if;

这样写


写错了。 后面的两个得用 := 来赋值
[解决办法]
可以的。

CREATE OR REPLACE PROCEDURE TBS.QQ_TEST_1 
AS
  j                 number;
begin
j := 0;
  if j = 0 then
  dbms_output.put_line(SYSDATE);
  dbms_output.put_line(SYSDATE);
  end if;

END QQ_TEST_1;
/

[解决办法]
而且字符串不能用 + 号  得用 
[解决办法]
 连接 
[解决办法]
当然可以,语法正确就OK
if 表达式
then
表达式1;
表达式2;
...
end if
[解决办法]
PS: 在oracle中,赋值用 :=,字符串连接 
[解决办法]
可以,直接用
IF v_date='20130101' then
 v_date:='2012_12';
 v_date:='20121231'
[解决办法]
1;
end if;
即可。