カスタム・レコード・タイプの変数を作成し、値を設定してからテーブルに挿入しようとしています。 私は困難を抱えており、私はどこが間違っているのか分かりません。 テーブルの列をチェックしましたが、それらはすべて、レジスタ型のnullではない列です。 しかし、「値が足りない」というエラーが表示されます。 私はSQL Developerで作業しています。私はこの問題はSQLは、それがデータ型のメンバーの場合よりも、別途データ型のオブジェクトを扱うことであると信じ値が不十分です。レジスタ・タイプのOracle SQL Developerを挿入します。
set serveroutput on;
DECLARE
TYPE ang_record IS RECORD
(cod employees.employee_id%TYPE,
nume employees.last_name%TYPE,
email employees.email%TYPE,
h_date employees.hire_date%TYPE,
job_id employees.job_id%TYPE,
sal employees.salary%TYPE,
dept employees.department_id%TYPE);
v_ang ang_record;
BEGIN
v_ang.cod := 500;
v_ang.nume := 'Profeanu';
v_ang.email := '[email protected]';
v_ang.h_date := SYSDATE;
v_ang.job_id := 'SH_CLERK';
v_ang.sal := 2000;
v_ang.dept := 50;
INSERT INTO empil (employee_id, last_name, email, hire_date, job_id, salary, department_id)
VALUES v_ang;
END;
/
ROLLBACK;
なぜ使用されるテーブル(従業員とempil)が異なるのですか? – wieseman
employeesはクエリを実行するテーブル、empilは変更可能なテーブルです(同じ型) –
なぜこれを実行しますか? empilを変更して従業員を照会すると、データは古くなります。 – wieseman