4.创建存储过程,使用游标确定一个员工的实际收入是否排在前3名。结果为1表示是,结果为0表示否。
执行该存储过程,并查看结果
【思考与练习】a.创建存储过程,要求当一个员工的工作年份大于6年时将其转到经理办公室。
b.创建存储过程,根据每个员工的学历将收入提高500元。
c.创建存储过程,使用游标计算本科及以上学历的员工在总员工数中所占的比例 d.使用命令方式修改存储过程的定义。 (2)触发器
1.向employee表插入或修改一个记录时,通过触发器检查记录的departmentID 值在department表中是否存在,若不存在,则取消插入或修改操作
向employee表插入或修改一行记录,查看效果 2.修改department表departmentID字段值时,该字段在employee表中的对应值也做相应修改
3.删除department表中记录的同时删除该记录departmentID字段值在employee表中对应的记录
4.创建INSTEAD OF触发器,当向salary表中插入记录时,先检查employeeID列上的值在employee中是否存在,如果存在则执行插入操作,如果不存在则提示“员工号不存在”
5.创建DDL触发器,当删除YGGL数据库的一个表时,提示“不能删除表”,并回滚删除表的操作
【思考与练习】a.对于YGGL数据库,表Employee的EmployeeID列与表SAlary的EmployeeID列应满足参照完整性规则,请用触发器实现两个表间的参照完整性。 b..当修改表Employee时,若将Employee表中员工的工作时间增加1年,则将收入增加500,若增加2年则增加1000,一次增加。若工作时间减少则无变化。
c.创建UPDATE触发器,当向salary表中Income值增加500时,outCome值则增加50. d.创建INSTEAD OF触发器,实现向不可更新视图插入数据
e.创建DDL触发器,当删除数据库时,提示“无法删除”并回滚删除操作