阅读量:0
在PL/SQL中,可以使用EXECUTE IMMEDIATE语句来执行动态SQL查询。下面是一个示例:
DECLARE v_sql VARCHAR2(200); v_result NUMBER; BEGIN -- 构建查询语句 v_sql := 'SELECT COUNT(*) FROM employees WHERE department_id = :dept_id'; -- 执行查询 EXECUTE IMMEDIATE v_sql INTO v_result USING 10; -- 输出结果 DBMS_OUTPUT.PUT_LINE('Number of employees in department 10: ' || v_result); END;
在上面的示例中,首先定义了一个变量 v_sql
用于存储查询语句,然后使用 EXECUTE IMMEDIATE
语句执行动态SQL查询,并将结果存储在变量 v_result
中。最后使用 DBMS_OUTPUT.PUT_LINE
输出查询结果。
需要注意的是,在动态SQL查询中,可以使用 USING
子句将变量绑定到查询语句中的参数,这样可以防止SQL注入攻击。