相关疑难解决方法(0)

在PL/SQL中使用绑定变量和动态SELECT INTO子句

我有一个关于绑定变量可以在PL/SQL中的动态SQL语句中使用的问题.

例如,我知道这是有效的:

CREATE OR REPLACE FUNCTION get_num_of_employees (p_loc VARCHAR2, p_job VARCHAR2) 
RETURN NUMBER
IS
  v_query_str VARCHAR2(1000);
  v_num_of_employees NUMBER;
BEGIN
  v_query_str := 'SELECT COUNT(*) FROM emp_' 
                 || p_loc
                 || ' WHERE job = :bind_job';                           
  EXECUTE IMMEDIATE v_query_str
    INTO v_num_of_employees
    USING p_job;
  RETURN v_num_of_employees;
END;
/
Run Code Online (Sandbox Code Playgroud)

我想知道你是否可以在这样的select语句中使用绑定变量

CREATE OR REPLACE FUNCTION get_num_of_employees (p_loc VARCHAR2, p_job VARCHAR2) 
RETURN NUMBER
IS
  v_query_str VARCHAR2(1000);
  v_num_of_employees NUMBER;
BEGIN
  v_query_str := 'SELECT COUNT(*) INTO :into_bind FROM emp_' 
                 || p_loc
                 || ' WHERE job = :bind_job';                           
  EXECUTE IMMEDIATE …
Run Code Online (Sandbox Code Playgroud)

sql oracle plsql oracle11g execute-immediate

42
推荐指数
3
解决办法
23万
查看次数

PL/SQL在IN CLAUSE中使用VARRAY

是否可以在pl/sql的IN CLAUSE中使用VARRAY?

oracle plsql oracle10g varray

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

oracle ×2

plsql ×2

execute-immediate ×1

oracle10g ×1

oracle11g ×1

sql ×1

varray ×1