1、第 11章 自定义员工请假审批工作流大连理工大学电子音像出版社 出版第 11章 自定义员工请假审批工作流 目的和要求:掌握视图的定义与使用掌握触发器的定义与使用掌握 ADO.NET事务的定义与使用重点和难点:触发器的定义与使用ADO.NET事务的定义与使用3模块业务描述 第一级审批权限 : 如果请假 10天以上 , 由员工提交请假申报,经教研室主任批准后,分别经系主任、副院长、院长逐级审批后 ,最后由董事长批准终止流程。 第二级审批权限:如果请假 7-10天 , 由员工提交请假申报,经教研室主任批准后,分别由系主任、副院长逐级审批 , 最后由院长审批终止流程。 第三级审批权限:如果请假 3-7
2、天 , 由员工提交请假申报,经教研室主任批准后,再系主任审批,最后由副院长审批终止流程。 第四级审批权限 : 如果请假 1-3天 , 由员工提交请假申报,教研室主任批准 ,呈送经系主任审批终止流程。 第五级审批权限 : 如果请假 1天,由员工提交请假申报,教研室主任批准终止流程。4模块 UML图设计 5模块界面设计 6基础知识 视图定义 视图是一张虚拟表,它数据来源于基本表。优点便于数据的操作,能将几张表的中集中起来,可以简化操作 示例一 : CREATE VIEW view_name AS select_statement 二例二 : 视图示例一: CREATE VIEW SELECTEMP
3、DEP AS select EmployeeID,EmployeeName,DepartmentName from dbo.Employee E,dbo.Department D where D.DepID=E.DepartmentID7触发器定义 触发器是一种特殊的存储过程,它不能显示地被调用,SQL Server 允许为 INSERT、 UPDATE、 DELETE 创建触发器,当在表(视图)中插入、更新、删除记录时,触发一个或一系列 T-SQL 语句。 创建触发器通常有两种方式, 一种是使用企业管理器创建触发器, 另一种是使用 T-SQL代码创建触发器 8语法格式 语法格式为 :CREA
4、TE TRIGGER 触发器名称ON 表名FOR INSERT、 UPDATE 或 DELETEAST-SQL 语句9 触发器示例一 CREATE TRIGGER dbo.InsertLR ON dbo.LeaveRecord FOR INSERTAS BEGINSET NOCOUNT ON;declare RecordID intdeclare EmpID int select RecordID=RecordID,EmpID=EmpID from insertedINSERT INTO dbo.LEAVE_CHECK(leave_bill_id,leave_proposerid,check_employee_level,check_type)values(RecordID,EmpID,5,1)END10ADO.NET事务 事务专门用于操作数据库时,保持数据一致性,如:学生表与班级表,每增加一名学生,便要在班级表的总人数列上增加一人。如果学生有一名退学,便要在班级表总人数列中减去一人。 为了保持两张表数据的一致性。可以使用事务对其进行处理。使用事务处理要用到名称空间。