[转]Oracle存储过程给变量赋值的方法

原文地址:http://blog.csdn.net/drbing/article/details/51821262

截止到目前我发现有三种方法可以在存储过程中给变量进行赋值:
1、直接法     :=    
   如:v_flag := 0;
2、select into
   如:假设变量名为v_flag,select count(*) into v_flag from students;
3、execute immediate 变量名(一般是sql的select语句) into 变量名
   如:
   v_sqlfalg   := 'select count(*) from user_tables where table_name='''||v_tablename || '''';
   execute immediate v_sqlfalg into v_flag;
   其中,v_tablename也是变量
当然2和3实质是一样的。只不过3中的select语句是根据变量生成的。
在存储过程中,是不能直接写select语句的。

原文地址:https://www.cnblogs.com/dirgo/p/8017252.html