我有一个Oracle触发器,我需要在第一个表插入行后创建列。
所以..在我的场景中:
当一些记录插入到NEWS_TBL中并且我需要得到它(在这里我通过最后插入的记录得到它)并且我需要从NEWS_TBL获取NAME并将值返回到NewsName变量并且返回的值插入到NEWS_TYPE_TBL作为专栏。
下面的代码不起作用。任何人都可以给我一个解决方案。
mycode的
BEFORE DELETE OR INSERT OR UPDATE
ON NEWS.NEWS_FIRST
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
DECLARE
NewsName varchar2(50);
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
EXECUTE IMMEDIATE
'select *
from ( select a.NAME,a.ID, max(ID) over () as max_pk
from NEWS_TBL a)
where ID = max_pk
RETURNING NAME INTO NewsName';
'ALTER TABLE NEWS_TYPE_TBL ADD [NewsName] NUMBER(50) NULL';
// I want to add returning ticket name to here from 1st query.
END trigNews;
/