データの変更方法
PL/SQLではUPDATE文でデータを更新できます。UPDATE文の構文は以下のようになります。
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
テーブル名はtable_nameで、column1、column2等は変更する列名、value1、value2等は新しい値、conditionは変更の条件です。
PL/SQLを使ってデータを更新する例を以下に示します。
DECLARE
v_name employees.first_name%TYPE := 'John';
BEGIN
UPDATE employees
SET salary = salary * 1.1
WHERE first_name = v_name;
DBMS_OUTPUT.PUT_LINE(SQL%ROWCOUNT || ' rows updated.');
END;
上記の例では、まず変数v_nameを宣言し、更新したい従業員のfirst_nameの値に設定しました。次に、条件に合致する従業員のsalary列を10%増加させるUPDATE文を実行しました。最後に、更新された行数をDBMS_OUTPUT.PUT_LINE関数を使って出力しました。
PL/SQLでUPDATE文を実行する際には、EXECUTE IMMEDIATE文を使用するか、暗黙カーソルを使用する必要がある点に注意してください。上の例では、暗黙カーソル(FOR UPDATE句によってトリガされる)を使用しています。