У меня есть триггер с именем tr_admin_user_role
, который автоматически вставляет значения в таблицу tbl_user_role
, когда мы выполняем вставку в другую таблицу с именем tbl_admin
.Нет ошибки во время компиляции, но всякий раз, когда я вставляю значение в таблицу tbl_admin
, она показывает мне ошибку, и ошибка похожа на
Этомоя таблица tbl_admin
CREATE TABLE tbl_admin(
admin_id INTEGER,
username VARCHAR2(50) NOT NULL UNIQUE,
passwords VARCHAR2(50) NOT NULL,
email VARCHAR2(100) UNIQUE,
enabled CHAR(1) DEFAULT 1 NOT NULL,
created_at DATE DEFAULT SYSDATE NOT NULL,
CONSTRAINT pk_admin_id PRIMARY KEY(admin_id)
);
таблица tbl_user_role таблица
CREATE TABLE tbl_user_role(
user_role_id INTEGER,
username VARCHAR2(50) NOT NULL,
user_role VARCHAR2(50) DEFAULT 'ROLE_ADMIN' NOT NULL,
CONSTRAINT pk_user_role_id PRIMARY KEY(user_role_id)
);
триггер, который я создал
CREATE OR REPLACE TRIGGER tr_admin_user_role
AFTER INSERT ON tbl_admin
FOR EACH ROW
DECLARE
new_username TBL_ADMIN.username%TYPE;
BEGIN
SELECT username INTO new_username FROM (
SELECT username FROM tbl_admin ORDER BY username DESC
) WHERE ROWNUM = 1;
INSERT INTO tbl_user_role(username, user_role) VALUES(new_username, 'ROLE_ADMIN');
END;
оператор вставки
INSERT INTO tbl_admin(username, passwords) VALUES('nisha', 'nisha');