5数据库设计说明书.docx
- 文档编号:10180516
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:11
- 大小:75.07KB
5数据库设计说明书.docx
《5数据库设计说明书.docx》由会员分享,可在线阅读,更多相关《5数据库设计说明书.docx(11页珍藏版)》请在冰豆网上搜索。
5数据库设计说明书
JIANGXIAGRICULTURALUNIVERSITY
数据库设计说明书
题目:
.NET学生信息管理系统
学院:
软件学院
小组:
第一小组
组员:
王亚雄刘玉兰张海斌
姚鹏燕黄中荣谢金福
组长:
王亚雄
班级:
软件1013班
指导教师:
李佳航
目录
1.引言3
1.1编写目的3
1.2背景3
1.3定义3
1.4参考资料4
2.外部设计4
2.1标识符的状态4
2.2使用它的程序5
2.3约定5
2.4专门指导6
2.5支持软件6
3.结构设计7
3.1概念结构设计7
3.2逻辑结构设计7
3.3物理结构设计8
4.运用设计8
4.1数据字典设计8
4.2安全保密设计10
1.引言
1.1编写目的
学生信息管理系统以数据库为核心,在数据库系统管理的支持下,进行学生信息的添加、整理、存储、检索、更新等操作。
对于数据库应用开发人员来说,如何利用数据库管理系统、系统软件和相关硬件系统,将学生信息转化成用户要求的有效的数据结构,并使数据库结构易于实现用户新的要求。
确切的说,数据库设计是指对于一个给定的应用环境,提供一个确定最优数据模型与处理模式的逻辑设计,以及一个确定数据库存储结构与存取方法的物理设计,建立起既能反映现实世界信息和信息联系,满足用户数据要求和加工要求,又能被某个数据库管理系统所接受,同时,能实现系统目标,并且有效存取数据的数据库。
本说明书将从数据库设计、结构情况方面对学生信息管理系统项目进行综合概述,使用数据库对象关系图来描述系统所涉及到的数据库对象和对象之间的关系,并对具体对象进行详细的规格描述。
软件开发人员可依照此说明书的数据库设计进行软件程序开发,实施部署人员可依照此说明书进行数据库的部署实施。
同时也为后续的数据库维护工作提供了良好的使用说明,也可以作为未来版本升级时的重要参考资料。
1.2背景
a.待开发数据库的名称:
Student_Information
b数据库系统:
SqlServer2005
c数据库宿主环境:
WindowsXP/Vista/Windows7/Linux
d客户端连接工具:
SqlServerManagemnetStudio
1.3定义
数据选项约束表:
用于为其他数据表中的字符型字段提供限定的选项
实体表:
用户实际使用的客观表格
计算表:
数据来自于对其他一个或多个实体表的计算结果
1.4参考资料
详细设计、概要设计说明书
2.外部设计
2.1标识符的状态
基本描述:
每个数据表中只能有一个student_id,即student_id在同一个表中必须唯一,所以student_id唯一地标识了单个字段。
由于整个开发系统还在开发中,所以数据库的开发还没有完成,这个属性必须在开发过程中和开发结束后有效。
本系统中有唯一标识的见下表2-1。
表2-1
数据表名称
标识符名称
标识符名称属性
Student_score
Student_id
学号
Student_techang
Student_id
学号
Student
Student_id
学号
略致描述:
本系统采用MicrosoftServer2005为基本开发工具,数据库名称为Test。
数据库中一共建立了9个表,表名分别为Student(学生表),Teacher(老师表),Manager(管理员表),Course(课程表),Courses(课次表),sEnroll(学生注册表),s_cs_grade(学生_课次_成绩表),s_academe_no(学院号表),s_specialty_no(专业号表)。
说明:
系统正式发布后,可能更改数据库用户/密码,请在统一位置编写数据库连接字符串,在发行前请予以改正。
附注:
1.此表仅是暂时使用的,仅用于测试;
2.此表的有效时间到此项目完成时。
2.2使用它的程序
由于数据的存取是通过界面的接口和数据库进行连接的,所以在实现过程中必不可少的是应用程序实现它们的连接。
常用的访问有:
查询、添加、删除、修改等,所以用到的程序见下表(√为需用到的程序):
A:
管理员模块
程序名称
数据表名称
Select*from
Insertinto
Update*set
Delete*from
student
√
√
√
√
Student_techang
√
√
√
√
Student_score
√
√
√
√
B:
普通用户模块
程序名称
数据表名称
Select*from
Insertinto
Update*set
Delete*from
student
√
Student_techang
√
Student_score
√
2.3约定
A.命名富有意义英文词汇或者拼音,要避免使用缩写,多个单词组成的,中间以下划线分割;
B.除数据库名称长度为1-8个字符,其余为1-30个字符不等,数据连接表的名称也不要超过30个字符。
字符集采用UTF-8,请注意字符的转换;
C.命名只能使用英文字母,数字和下划线;
D.各表之间相关列名尽量同名,以便记忆;
E.数据库的命名:
数据库命名为“STUDENT”+表示相对数据的2-4个字符;
F.前缀为Tbl_。
数据表名称必须以有特征含义的单词或缩写组成,中间可以用“_”分割,例如:
Tb1_tlms_stu。
表名称不能包含双引号;
G.所有数据表第一个字段都是系统内部使用主键列,自增字段,不可空,名称为:
id,确保不把此字段暴露给最终用户;
H.除特别说明外,所有字符串字段都采用varchar(50)类型,(无论汉字还是英文,都算一个字符);
I.除特别说明外,所有小数的字段都采用decimal(13,3)的形式表达;
J.除特别说明外,所有日期格式都采用date格式,无时间值;
K.除特别说明外,所有整形都采用int格式;
L.除特别说明外,所有字段默认都设置为null。
2.4专门指导
对于从事此数据库的生成、此数据库的测试、维护的人员,提出如下参考意见:
A.从事此数据库的开发人员和数据维护人员必须进行统一的培训和指导;
B.数据库的输入统一采用键盘。
由于现在没有设置权限,故只要不违背基本的限制,所有的操作都是可以进行的。
可是对于本系统需要的数据,却是有数据长度限制的,尤其是有说明的部分,所以测试人员在具体进行数据测试时,要注意数据输入格式。
请注意:
MySQL中date的默认值为0000-00-00,这与.NET的数据类型不匹配,请确保在存储date字段时给出一个合法的初始值。
2.5支持软件
A.windows2000以上的操作系统
这是主要的软件,此系统开发过程在除了文档的编写,其它的工作都在操作系统中进行,它是现在所有初级学者的操作系统工具,在开发过程中担任重要的任务。
B.MicrosoftVisualStudio2008
它是作为一种程序设计语言,同时也是一个集成开发工具,提供了软件代码的自动生成和可视化的资源编辑功能,在此系统开发过程中主要担任代码的编写等。
C.Office2003/2007应用软件
在这里我们主要用到的是其中的Sqlserver
数据库管理员工具:
Sqlserver2005ManagementStudio
D.查询浏览工具:
Sqlserver2005ManagementStudio
E.命令行工具:
Sqlserver2005
F.开发客户端:
Microsoftvs2008
3.结构设计
3.1概念结构设计
E-R图如下:
3.2逻辑结构设计
逻辑设计是系统中数据库设计的重要步骤之一,其中罗列了文档需求分析中各种功能实现之间的本质关系,通过关系模式图描述实例化了文字的抽象理念。
以下就针对本系统加以阐述其逻辑设计。
3.3物理结构设计
数据库结构的物理设计是指对一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程主要是设计表结构。
一般地,实体对应于表,实体的属性对应于表的列,实体之间的关系成为表的约束。
逻辑设计中的实体大部分可以转换成物理设计中的表,但是它们并不一定是一一对应的。
4.运用设计
4.1数据字典设计
数据字典采用如下的格式:
字段名称
字段类型
说明
表名
字符
存放表的名称
列名
字符
存放列的名称
类型名
字符
存放列的类型
表名
列名
类型
StudentTable
sno
varchar
StudentTable
sname
varchar
StudentTable
s_paw
varchar
StudentTable
s_age
int
StudentTable
s_address
varchar
StudentTable
s_class
varchar
StudentTable
s_academe_no
varchar
StudentTable
s_specialty_no
varchar
StudentTable
s_mail
varchar
StudentTable
s_tel
varchar
StudentTable
s_sex
char
StudentTable
s_cardID
varchar
StudentTable
s_grade
varchar
StudentTable
s_state
varchar
StudentTable
s_state_time
datetime
StudentTable
s_state_period
int
表名
列名
类型
TeacherTable
tno
varchar
表名
列名
类型
TeacherTable
tname
varchar
TeacherTable
t_psw
Varchar
TeacherTable
t_address
varchar
TeacherTable
t_mail
varchar
TeacherTable
t_tel
varchar
TeacherTable
t_position
varchar
TeacherTable
t_state_time
datetime
表名
列名
类型
CourseTable
cno
varchar
CourseTable
cname
varchar
CourseTable
c_period
int
CourseTable
xuefen
int
CourseTable
property
varchar
表名
列名
类型
CoursesTable
cnos
varchar
CoursesTable
cno
varchar
CoursesTable
cs_start_time
varchar
CoursesTable
team
datetime
CoursesTable
cs_room
varchar
CoursesTable
tno
varchar
表名
列名
类型
ManagerTable
mno
varchar
ManagerTable
mname
varchar
ManagerTable
m_address
varchar
ManagerTable
m_psw
varchar
ManagerTable
m_cardID
varchar
ManagerTable
m_tel
varchar
ManagerTable
m_mail
varchar
表名
列名
类型
s_cs_gradeTable
sno
varchar
s_cs_gradeTable
cnos
varchar
s_cs_gradeTable
scgrade
varchar
s_cs_gradeTable
scgrade_state
varchar
表名
列名
类型
sEnrollTable
sno
varchar
sEnrollTable
s_enroll
varchar
sEnrollTable
team
varchar
表名
列名
类型
sEnrollTable
s_enroll_id
varchar
sEnrollTable
mno
varchar
4.2安全保密设计
本系统确保当数据库数据存储媒体被破坏时以及当数据库用户误操作时,数据库数据信息不至于丢失。
A.防止用户直接操作数据库的方法
(1)在运行环境中,必须严格管理sys和system用户,数据信息管理员必须修改其默认密码,禁止用该用户建立数据库应用对象。
删除或锁定数据库测试用户。
(2)应用级的用户帐号密码不能与数据库相同,防止用户直接操作数据库。
管理员只能用帐号登陆到应用软件,通过应用软件访问数据库,而没有其它途径操作数据库。
B.角色与权限
必须按照应用需求,设计不同的用户访问权限。
包括应用系统管理用户,普通用户等,按照业务需求建立不同的应用角色。
用户访问另外的用户对象时,应该通过创建同义词对象synonym进行访问。
确定每个角色对数据库表的操作权限,只有数据库管理员才可以对学生信息进行以下操作:
如创建、检索、更新、删除等。
而普通用户只可以对学生相关信息进行查询,而不具备删除、更新、添加等权限。
C.用户密码设置
使用者在使用此数据库时,由于不同的访问者的登陆号码不同,且增加了密码设置,故相当于对于数据的访问设置了权限,所以数据可以说是安全的。
管理员的权限最大,可以控制所有的数据,教师和学生只能够看到与他们自己有关的信息,而不能随便修改他人信息。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 设计 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)