Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
减去两列,然后添加一些值,并在oracle中使用触发器插入第三列_Oracle_Triggers_Calculated Columns - Fatal编程技术网

减去两列,然后添加一些值,并在oracle中使用触发器插入第三列

减去两列,然后添加一些值,并在oracle中使用触发器插入第三列,oracle,triggers,calculated-columns,Oracle,Triggers,Calculated Columns,我使用的是Oracle10g,我被告知使用触发器来完成这项任务,我想到了这个 |`create trigger total on inventory after insert or update for each row begin set :new.total=:new.stockin - :new.stockout +20; end;`| 之前、之后缺少错误 我想要总计=库存-库存+20 表存货 |stcokin | |stockout |

我使用的是Oracle10g,我被告知使用触发器来完成这项任务,我想到了这个

|`create trigger total
on inventory
after insert or update
for each row 
begin set 
:new.total=:new.stockin - :new.stockout +20;
end;`|
之前、之后缺少错误 我想要总计=库存-库存+20

表存货

|stcokin |               |stockout |                | total|
 |-------|               |---------|                |------|
|2|                        |5|                         | 23|
  • 您应使用以下方式分配:=
  • 您应该在更新或插入之前编辑新值。更新后是指(例如)更新其他表
  • 我认为你的触发器名称也引起了问题
因此:

  • 您应使用以下方式分配:=
  • 您应该在更新或插入之前编辑新值。更新后是指(例如)更新其他表
  • 我认为你的触发器名称也引起了问题
因此:


仍在获取错误ora-04071:在之前、之后或代替之前丢失keyword@PaariThirugnanasambandam然后您应该将回复标记为正确:-)仍然收到错误ora-04071:在之前、之后或代替之前丢失keyword@PaariThirugnanasambandam然后您应该将回复标记为正确:-)
CREATE OR REPLACE TRIGGER trg_total BEFORE INSERT OR UPDATE ON inventory
FOR EACH ROW
BEGIN
    :NEW.total := :NEW.stockin - :NEW.stockout + 20;
END;