水电管理系统登陆子系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库课程实验周设

计说明书

水电管理系统

学生姓名:施杰明学号: 40

学院:计算机与控制工程

专业:计算机科学与技术

指导教师:熊风光

2014年 6 月 27日

1. 需求分析

目标设计

以宿舍水电费为背景,实现水电费管理。本系统可以分为四个子系统:

1.统计子系统:统计水电用量,水电费用计算,扣除水电费。

2.登陆子系统:实现密码验证,不同身份的用户具有不同的权限。

3.管理子系统:增加,删除,修改用户,设置水电价格。

4.缴费子系统:实现查询余额,缴费功能

开发和运行环境

Eclipse、SQL server 2008

Window 7,window 8

数据流分析

图1 顶层数据流图

图2 登陆子系统图

功能模块设计

图3 系统功能模块图本人主要工作

登陆子系统

2. 水电管理系统登陆子系统数据库概要设计

概念结构设计

图4登陆子系统ER图模式转换

学生(学号,学生账号,姓名,性别,宿舍号)

账号(账号,密码,权限)

管理员(管理员编号,管理员账号,管理员身份)

范式分析

学生(学号,学生账号,姓名,性别,宿舍号)

学号作为主码,学生账号,姓名,性别,宿舍号完全函数依赖于主码学生,满足2NF。其他属性不存在对主码的传递依赖,满足3NF。学生中除了学号没有其他决定因素,满足BCNF。

账号(账号,密码,权限)

账号作为主码,密码,权限完全函数依赖于主码账号,满足2NF。其他属性不存在对主码的传递依赖,满足3NF。账号中除了账号没有其他决定因素,满足BCNF。

管理员(管理员编号,管理员账号,管理员身份)

管理员编号作为主码,管理员账号,管理员身份完全函数依赖于主码管理员编号,满足2NF。其他属性不存在对主码的传递依赖,满足3NF。管理员中除了管理员编号没有其他决定因素,满足BCNF。

3.登陆子系统物理设计

数据库中表的定义

学生表的定义

CREATE TABLE [dbo].[学生](

[学号] [varchar](20) NOT NULL,

[学生账号] [varchar](20) NOT NULL,

[姓名] [varchar](20) NULL,

[性别] [nchar](1) NULL,

[宿舍号] [varchar](20) NOT NULL,

CONSTRAINT [PK_学生_1] PRIMARY KEY CLUSTERED

(

[学号] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],

CONSTRAINT [IX_学生] UNIQUE NONCLUSTERED

(

[学号] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

管理员表的定义

CREATE TABLE [dbo].[管理员](

[管理员编号] [varchar](20) NOT NULL,

[账号] [varchar](20) NOT NULL,

[身份] [varchar](20) NOT NULL,

[姓名] [nchar](10) NULL,

CONSTRAINT [PK_管理员] PRIMARY KEY NONCLUSTERED

(

[管理员编号] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

账号表的定义

CREATE TABLE [dbo].[账号](

[账号] [varchar](20) NOT NULL,

[密码] [varchar](20) NOT NULL,

[权限] [varchar](20) NOT NULL,

CONSTRAINT [PK_账号] PRIMARY KEY NONCLUSTERED

(

[账号] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

视图、存储过程、触发器的结构和定义

账号视图定义

CREATE VIEW [dbo].[accont number]

AS

SELECT 账号, 密码, 权限

FROM dbo.账号

登陆存储器:实现登陆后权限控制

ALTER procedure [dbo].[login] (@zhanghao varchar(20),@password varchar(20),@result varchar(20) = null output)

AS DECLARE

@密码 varchar(20),@权限 varchar(20) = null,@user varchar(20) = null,@pass varchar(20) = null;

begin

select @密码 = 密码 from 账号 where 账号 = @zhanghao;

if @密码 != @password

相关文档
最新文档