我是新手,请帮我看看下面这个触发器错在哪里?

cnbill 2004-10-30 10:37:19
其目的是当在tbl_today中插入一行时,从tbl_documents这个表中取得id号和tbl_today中新插入的行的id号相等的记录的time字段的值赋给tbl_today的time字段:

begin

update tbl_today set tbl_today.time =
(select tbl_documents.time from tbl_documents where tbl_documents.id = tbl_today.id);

end;

执行时间我选择的是插入之后执行
...全文
64 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnbill 2004-10-30
  • 打赏
  • 举报
回复
谢谢,dinya2003(OK),搞定了!
dinya2003 2004-10-30
  • 打赏
  • 举报
回复
create or replace trigger trigger_name
before insert on tb1_today <--改成before触发
for each row
begin
--如果没有查到日期,则用今天代替,
select nvl(a.time,sysdate) into :new.time from tb1_documents a where a.id=:new.id;
end ;

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧