阅读量:0
EXECUTE IMMEDIATE语句用于在PL/SQL程序中动态执行SQL语句。以下是一个使用EXECUTE IMMEDIATE的示例:
DECLARE sql_stmt VARCHAR2(200); emp_name VARCHAR2(100); BEGIN sql_stmt := 'SELECT ename FROM emp WHERE empno = 7839'; EXECUTE IMMEDIATE sql_stmt INTO emp_name; DBMS_OUTPUT.PUT_LINE('Employee name is: ' || emp_name); END;
在这个示例中,我们首先声明一个变量sql_stmt来存储要执行的SQL语句。然后,我们使用EXECUTE IMMEDIATE语句执行SELECT语句并将结果存储在emp_name变量中。最后,我们使用DBMS_OUTPUT.PUT_LINE语句来打印出从数据库中检索到的员工姓名。
需要注意的是,使用EXECUTE IMMEDIATE执行动态SQL语句时,需要格外注意防止SQL注入攻击。可以使用绑定变量来避免这种情况。