我有两个表和一个触发器,并且正在ProjectsTable像这样插入值:
CREATE TABLE ProjectsTable
(
ProjectID NUMBER(6) NOT NULL,
ProjectName VARCHAR2(200) NOT NULL,
Cost NUMBER(10,2),
ExpenseTotal NUMBER(10,2),
CostRemaining NUMBER(10,2),
PRIMARY KEY (ProjectID)
);
CREATE TABLE ExpenseTable
(
ID NUMBER(6) NOT NULL,
ProjectID NUMBER(6) NOT NULL,
ExpenseAmount NUMBER(10,2),
ExpenseDate NUMBER(4),
CONSTRAINT fk
FOREIGN KEY (ProjectID)
REFERENCES ProjectsTable(ProjectID)
);
CREATE TRIGGER ExpenseSum AFTER INSERT ON ExpenseTable FOR EACH ROW
BEGIN
UPDATE ProjectsTable P
SET ExpenseTotal =
(SELECT SUM(ExpenseAmount) from ExpenseTable
where ExpenseTable.ProjectID= P.ProjectID)
where P.ProjectID = :New.ProjectID;
END;
/
INSERT …Run Code Online (Sandbox Code Playgroud)