PL/SQL で SQL ステートメントを実行する方法

PL/SQLでSQL文を実行するには、複数の方法があります。

  1. PL/SQL 内の任意の動的 SQL 文を直接実行するために、EXECUTE IMMEDIATE 文を使用します。 例えば:
BEGIN
   EXECUTE IMMEDIATE 'SELECT * FROM employees WHERE employee_id = 100';
END;
  1. SELECT INTO句を使用して、PL/SQL変数に問い合わせ結果を保存します。例を以下に示します。
DECLARE
   emp_name employees.last_name%TYPE;
BEGIN
   SELECT last_name INTO emp_name FROM employees WHERE employee_id = 100;
   DBMS_OUTPUT.PUT_LINE('Employee Name: ' || emp_name);
END;
  1. OPEN-FETCH-CLOSE文を使用する:PL/SQLでカーソルを開いたりデータをフェッチしたりカーソルをクローズしたりすることができる。例えば:
DECLARE
   CURSOR c_emp IS SELECT * FROM employees WHERE salary > 5000;
   emp_rec employees%ROWTYPE;
BEGIN
   OPEN c_emp;
   LOOP
      FETCH c_emp INTO emp_rec;
      EXIT WHEN c_emp%NOTFOUND;
      DBMS_OUTPUT.PUT_LINE(emp_rec.employee_id || ' - ' || emp_rec.last_name);
   END LOOP;
   CLOSE c_emp;
END;

PL/SQLでSQL文を実行する一般的な方法はこれらであり、使用方法は各自のニーズと状況によって異なります。

bannerAds