人事管理系统项目详细设计说明书(sql)内容摘要:

ATISTICS ON GO ALTER DATABASE [RGB] SET CURSOR_CLOSE_ON_COMMIT OFF GO ALTER DATABASE [RGB] SET CURSOR_DEFAULT GLOBAL GO ALTER DATABASE [RGB] SET CONCAT_NULL_YIELDS_NULL OFF GO ALTER DATABASE [RGB] SET NUMERIC_ROUNDABORT OFF GO ALTER DATABASE [RGB] SET QUOTED_IDENTIFIER OFF GO ALTER DATABASE [RGB] SET RECURSIVE_TRIGGERS OFF GO ALTER DATABASE [RGB] SET DISABLE_BROKER GO ALTER DATABASE [RGB] SET AUTO_UPDATE_STATISTICS_ASYNC OFF GO ALTER DATABASE [RGB] SET DATE_CORRELATION_OPTIMIZATION OFF GO ALTER DATABASE [RGB] SET TRUSTWORTHY OFF GO ALTER DATABASE [RGB] SET ALLOW_SNAPSHOT_ISOLATION OFF GO ALTER DATABASE [RGB] SET PARAMETERIZATION SIMPLE GO ALTER DATABASE [RGB] SET READ_COMMITTED_SNAPSHOT OFF GO 详细设计说明书 10 ALTER DATABASE [RGB] SET HONOR_BROKER_PRIORITY OFF GO ALTER DATABASE [RGB] SET READ_WRITE GO ALTER DATABASE [RGB] SET RECOVERY FULL GO ALTER DATABASE [RGB] SET MULTI_USER GO ALTER DATABASE [RGB] SET PAGE_VERIFY CHECKSUM GO ALTER DATABASE [RGB] SET DB_CHAINING OFF GO . 用户 除了数据库中自动创建的 dbo 用户之外,还要创建如下两个用户:  RGBWinUser:该用户是 Windows 应用程序访问数据库所使用的账号,它的权限一般仅限于查看视图和执行存储过程。  RGBASPUser:该用户是 Web 应用程序访问数据库所使用的账号,它的权限和 RGBWinUser 用户类似,即仅限于查看视图和执行存储过程。 答案: [RGB] GO /****** Object: User [RGBWinUser] Script Date: 06/18/2020 08:29:15 ******/ GO CREATE USER [RGBWinUser] FOR LOGIN [WO] WITH DEFAULT_SCHEMA=[dbo] GO 2. USE [RGB] GO /****** Object: User [RGBASPUser] Script Date: 06/18/2020 08:30:46 ******/ GO CREATE USER [RGBASPUser] FOR LOGIN [ni] WITH DEFAULT_SCHEMA=[dbo]  GO 详细设计说明书 11 3. 表 . 表设计概述 根据教学案例功能,数据库将以员工信息为中心存储相关数据,配合 SQL Server 数据库系统中提供的数据管理,实现员工考勤、请假、加班管理及系统设置等业务功能。 数据库设计将以存储员工信息的员工表为基础,连接多张相关表实现对以下关系的支持:  员工与请假申请  员工与加班申请  员工与考勤记录  员工与部门  员工与部门经理  员工与绩效考核记录  员工与工资 此外数据库中还将记录教学案例应用中需要的全局配置信息和事件日志记录。 数据库系统主要的实体关系如下图: ( 部门表中去掉部门经理编号 ,在数据删除时可 能会出现死锁 ) 详细设计说明书 12 . 表 tblEmployee 概述 表 tblEmployee 用于记录员工基本信息,并作为基础表与其他表联接。 该表通过 DeptID和Title 可以确定员工部门和职位信息。 当 Title 的值为“经理”时可以确定此员工为该部门的部门经理。 答案: USE [RGB] GO /****** Object: Table [dbo].[tblEmployee] Script Date: 06/20/2020 17:13:37 ******/ SET ANSI_NULLS ON GO 详细设计说明书 13 SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDING ON GO CREATE TABLE [dbo].[tblEmployee]( [EmployeeID] [int] NOT NULL, [Name] [nvarchar](50) NOT NULL, [LoginName] [nvarchar](20) NOT NULL, [Password] [binary](20) NULL, [Email] [nvarchar](50) NOT NULL, [DeptID] [int] NULL, [BasicSalary] [int] NULL, [Title] [nvarchar](50) NULL, [Telephone] [nvarchar](50) NULL, [OnhoardDate] [datetime] NOT NULL, [Selfintro] [nvarchar](200) NULL, [VacationRemain] [int] NULL, [EmployeeLevel] [int] NULL, [PhotoImage] [image] NULL, CONSTRAINT [PK_tblEmployee] PRIMARY KEY CLUSTERED ( [EmployeeID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO SET ANSI_PADDING OFF GO ALTER TABLE [dbo].[tblEmployee] WITH CHECK ADD CONSTRAINT [FK_tblEmployee_tblDepartment] FOREIGN KEY([DeptID]) REFERENCES [dbo].[tblDepartment] ([DeptID]) GO ALTER TABLE [dbo].[tblEmployee] CHECK CONSTRAINT [FK_tblEmployee_tblDepartment] GO ALTER TABLE [dbo].[tblEmployee] WITH CHECK ADD CONSTRAINT [FK_tblEmployee_tblEmployeeLevel] FOREIGN KEY([EmployeeLevel]) 详细设计说明书 14 REFERENCES [dbo].[tblEmployeeLevel] ([EmployeeLevel]) GO ALTER TABLE [dbo].[tblEmployee] CHECK CONSTRAINT [FK_tblEmployee_tblEmployeeLevel] GO 表定义 表 tblEmployee 定义如下: 名称 类型 可否为空 说明 备注 EmployeeID int 4 否 员工编号 自动生成 Name nvarchar 50 否 员工姓名 LoginName nvarchar 20 否 员工登录名 建议为英文字符,且与姓名不同 Password binary 20 可 员工登录密码 Email nvarchar 50 否 员工电子邮件 DeptID int 4 可 员工所属部门编号 BasicSalary int 4 可 员工基本工资 Title nvarchar 50 可 员工职位名称 可取值为“普通员工”、“部门经理”、“总裁” Telephone nvarchar 50 可 员工电话 OnboardDate datetime 8 否 员工报到日期 SelfIntro nvarchar 200 可 员工自我介绍 初始为空,由员工自行输入 VacationRemain int 4 可 员工剩余假期 小时数 EmployeeLevel int 4 可 员工的级别 PhotoImage image 16 可 员工照片 主键 表 tblEmployee 的主键是 EmployeeID 字段,类型为 int,设置自动增量。 答案: USE [RGB] GO /****** Object: Index [PK_tblEmployee] Script Date: 06/18/2020 09:00:53 ******/ ALTER TABLE [dbo].[tblEmployee] ADD CONSTRAINT [PK_tblEmployee] PRIMARY 详细设计说明书 15 KEY CLUSTERED ( [EmployeeID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] GO 外键 表 tblEmployee 的外键有 DeptID,类型为 int,用于与表 tblDepartment 中的 DeptID 字段关联。 DeptID 字段可以为空,在此情况下表示员工不在任何部门中。 表 tblEmployee 的外键有 EmployeeLevel,类型为 int,用于与表 tblEmployeeLevel 中的EmployeeLevel字段关联。 1. USE [RGB] GO ALTER TABLE [dbo].[tblEmployee] WITH CHECK ADD CONSTRAINT [FK_tblEmployee_tblDepartment] FOREIGN KEY([DeptID]) REFERENCES [dbo].[tblDepartment] ([DeptID]) GO ALTER TABLE [dbo].[tblEmployee] CHECK CONSTRAINT [FK_tblEmployee_tblDepartment] GO 2. USE [RGB] GO ALTER TABLE [dbo].[tblEmployee] WITH CHECK ADD CONSTRAINT [FK_tblEmployee_tblEmployeeLevel] FOREIGN KEY([EmployeeLevel]) REFERENCES [dbo].[tblEmployeeLevel] ([EmployeeLevel]) GO ALTER TABLE [dbo].[tblEmployee] CHECK CONSTRAINT [FK_tblEmployee_tblEmployeeLevel] GO 约束 表 tblEmployee 中的 LoginName 字段建议为 48位小写 英文字符,且不能与员工姓名相同也不可以为空字符串。 详细设计说明书 16 索引 主键字段 EmployeeID 具有自动创建的聚集索引。 . 表 tblDepartment 概述 表 tblDepartment用于记录企业内部的部门信息。 每个独立的部门在该表中都对应一条记录。 该表通过与 tblEmployee 表关联可以确定员工所属的部门。 答案: USE [RGB] GO /****** Object: Table [dbo].[tblDe。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。