华中师范大学本科毕业论文
(3)数据库的创建
①在创建数据表结构之前,首先要创建一个数据库,本系统使用的数据库被命名为EmployeeInformationMS 创建语句如下:
if exists (select * from sysdatabases where name=' EmployeeInformationMS ') drop database EmployeeInformationMS go
Create DATABASE EmployeeInformationMS
②数据库表的设计与创建:本系统包括的表主要有:部门信息表、员工基本信息表、培训记录表、薪资信息表、奖罚信息表、用户信息表。 部门信息表:用来保存企业内部的部门信息,其结构如下: 表3.1 部门信息表 部门信息表(DepartmentInformation) 字段 类型 说明 D_Number int 部门编号 D_Name D_Count varchar varchar 部门名称 部门人数 大小 是否为空 NOT NULL NOT NULL NOT NULL 20 20 创建部门信息表,其代码如下:
USE EmployeeInformationMS go
CREATE TABLE DepartmentInformation (
D_Number INT IDENTITY(1,1), D_Name VARCHAR (20) NOT NULL, D_Count VARCHAR (20) NOT NULL, )
员工基本信息表:用来企业内部员工的各项基本信息,其结构设计如下:
表3.2 员工基本信息表
员工基本信息表(EmployeeInformation) 字段 类型 说明 E_Number E_Name E_Sex E_BornDate E_Marriage int varchar varchar varchar varchar --员工编号 --姓名 --性别 --出生日期 --婚姻状态 大小 20 2 30 4 是否为空 NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL 13
华中师范大学本科毕业论文
E_PoliticsVisage E_SchoolAge E_EnterDate E_InDueFormDate E_Department varchar varchar varchar varchar varchar varchar varchar varchar 政治面貌 学历 进入公司时间 转正时间 所在部门 职务 状态 备注 20 20 30 30 20 20 20 500 NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL E_Headship E_Estate E_Remark 创建员工信息表,其代码如下:
USE EmployeeInformationMS go
CREATE TABLE EmployeeInformation (
E_Number INT IDENTITY(1,1), E_Name VARCHAR(30) NOT NULL, E_Sex VARCHAR(2) NOT NULL, E_BornDate VARCHAR(30) NOT NULL, E_Marriage VARCHAR(4) NOT NULL, E_PoliticsVisage VARCHAR(20) NOT NULL, E_SchoolAge VARCHAR(20) NOT NULL, E_EnterDate VARCHAR(30) NOT NULL, E_InDueFormDate VARCHAR(30) NOT NULL, E_Department VARCHAR(20) NOT NULL, E_Headship VARCHAR(20) NOT NULL, E_Estate VARCHAR(10) NOT NULL, E_Remark VARCHAR(500), )
培训信息表:保存公司所安排员工进行的各种培训信息,其结构设计如下:
表3.3 培训信息表
培训信息表(TrainInformation) 字段 类型 T_Number T_Content T_Name T_Date T_Money int varchar varchar int int 说明 培训编号 培训内容 培训者姓名 培训天数 培训费用 大小 100 是否为空 NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL 创建培训信息表,其代码语句如下: USE EmployeeInformationMS
14
华中师范大学本科毕业论文
go
CREATE TABLE TrainInformation (
T_Number int IDENTITY(1,1), T_Content VARCHAR(100) NOT NULL,
T_Name VARCHAR(20) NOT NULL, T_Date INT Not NULL, T_Money INT )
薪资信息表:用来保存员工的各项薪酬信息及其加总数据。其结构设计如下: 表3.4 薪资信息表 薪资信息表(WageInformation) 字段 类型 W_Number W_Name W_BasicWage W_Boon W_Bonus W_CountMethod W_FactWage int varchar int int int varchar int 说明 编号 姓名 基本工资 福利 奖金 计算方法 实发工资 大小 30 50 是否为空 NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL 创建薪资信息表,其代码如下:
USE EmployeeInformationMS go
CREATE TABLE WageInformation (
W_Number INT IDENTITY(1,1), W_Name VARCHAR(30) NOT NULL,
W_BasicWage INT NOT NULL, W_Boon INT NOT NULL, W_Bonus INT NOT NULL, W_CountMethod VARCHAR(50) NOT NULL, W_FactWage INT NOT NULL, )
奖罚信息表:又来保存企业内部员工所获得的奖励或接受惩罚的信息,结构设计如下:
表3.5 奖罚信息表
奖罚信息表(EncouragementPunishInformation) 字段 类型 说明 EP_Number EP_Name 大小 30 是否为空 NOT NULL NOT NULL int Varchar 编号 姓名 15
华中师范大学本科毕业论文
EP_Date EP_Address EP_Causation varchar varchar varchar 奖罚时间 奖罚地点 奖罚原因 30 50 200 NOT NULL NOT NULL NOT NULL 创建奖罚信息表,语言如下:
USE EmployeeInformationMS go
CREATE TABLE EncouragementPunishInformation (
EP_Number INT IDENTITY(1,1), EP_Name VARCHAR(30) NOT NULL EP_Date VARCHAR(30) NOT NULL, EP_Address VARCHAR(50) NOT NULL,
EP_Causation VARCHAR(200) NOT NULL, )
用户信息表:保存使用该系统的用户信息,其结构设计如下: 表3.6 用户信息表 用户信息表(UserInformation) 字段 User_Name User_Password User_Popedom 类型 varchar varchar varchar 说明 姓名 密码 权限 大小 20 20 20 是否为空 NOT NULL NOT NULL NOT NULL 创建用户信息表,语句如下: USE EmployeeInformationMS go
CREATE TABLE UserInformation (
User_Name VARCHAR(20) NOT NULL, User_Password VARCHAR(20) NOT NULL,
User_Popedom VARCHAR(20) DEFAULT 'B', --权限 ) go
INSERT UserInformation VALUES('管理员','abc','A')
一般用户信息的权限都是“B”,即是普通用户;在创建用户信息表的同时将权限为“A”的管理员用户插入表中,其密码默认为“abc”。
16
华中师范大学本科毕业论文
第4章 系统实现
4.1 数据库的连接
该系统采用JDBC数据库连接,JDBC(Java Data Base Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,简单地说JDBC 可以做到:与数据库建立连接、发送操作数据库的语句并处理结果。本系统的数据库连接以及执行代码如下: public static Connection cn;
public static Statement st;
public static ResultSet rs; public static boolean joinDB() { boolean joinFlag; try {
joinFlag = true;
Class.forName(\
cn=DriverManager.getConnection(\baseName=EmployeeInformationMS;user=sa;password=123\
System.out.println(\数据库连接成功\
st = cn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); return joinFlag;
} catch (SQLException sqlEx) {
System.out.println(sqlEx.getMessage()); joinFlag = false; return joinFlag;
} catch (ClassNotFoundException notfoundEX) { System.out.println(notfoundEX.getMessage());
joinFlag = false;
return joinFlag; }}
public static boolean executeSQL(String sqlString) { boolean executeFlag; try {
st.execute(sqlString); executeFlag = true; } catch (Exception e) { executeFlag = false;
System.out.println(\ 17