0
我必须在表(员工)中实施触发器,当简单员工的薪水高于其部门经理时,触发器应该“触发”。 而我已经这样做了。SQL TRIGGERS DATABASE
CREATE TRIGGER sal on EMPLOYEE
AFTER INSERT,UPDATE
as
declare @sal int;
declare @sal_mgr int;
declare @sal_manager TABLE(sal int)
SELECT @sal = salary FROM EMPLOYEE
SELECT @sal_mgr = salary FROM EMPLOYEE join Department on ssn = mgr_ssn where dno=dnumber
INSERT INTO @sal_manager values (@sal_mgr)
UPDATE EMPLOYEE SET salary = @sal_mgr-1 where salary >= @sal_mgr
但是有了这个,我只拿到1名经理的工资,不是所有的我在不同的部门(其只允许每个部门1部经理)
一名员工只有一名经理,不是?那么其他经理人的薪水哪个重要? – oerkelens
每个员工只有1个经理,一个经理有很多员工。这个代码总是获得相同的经理薪水,并将每个员工与他的薪水进行比较。不是他们部门的经理 –
我很惊讶上面的运行!你有多个陈述,但没有开始 - 结束结构。 – Shadow