平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx

上传人:b****5 文档编号:18309526 上传时间:2022-12-15 格式:DOCX 页数:33 大小:535.35KB
下载 相关 举报
平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx_第1页
第1页 / 共33页
平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx_第2页
第2页 / 共33页
平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx_第3页
第3页 / 共33页
平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx_第4页
第4页 / 共33页
平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx

《平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx(33页珍藏版)》请在冰豆网上搜索。

平时成绩记分系统代码实现过程v基础数据设计Word文档格式.docx

图1.7学生与登录用户之间的关系7

图1.8基础数据的逻辑模型8

图1.9设置“学生”的主键8

图1.10确保所有的表都将会生成9

图1.11最终的逻辑模型9

图1.12逻辑模型转换为物理模型——菜单操作10

图1.13物理模型数据库类型及名称设置11

图1.14自动转换得到的物理模型11

图1.15更改数据库类型12

图1.16配置外键关联的实现类型13

图1.17创建数据库脚本——菜单13

图1.18设置脚本文件路径14

图2.1更改数据库类型23

图2.2更改外键关联的实现类型24

图2.3设置PowerDesigner数据库创建脚本的字符集25

代码目录

代码1.1基础数据表创建脚本15

基础数据管理(管理员业务)

在“平时成绩记分系统工程代码实现过程v1.0-用户登录.doc”中我们实现了一个基本的用户登录的功能。

但登录用户所提供的信息非常简单。

对于一个实际的应用系统来说,仅仅登录名和密码还远远不够往往还需要用户的姓名、联系方式等信息——对于教师来讲,可能还有职称等信息;

对于学生来讲,可能还有班级、专业等信息——这将形成一个复杂的、紧密联系的数据集。

我们把这些暂时不涉及平时成绩记录的、稳定的数据称为基础数据,包括学生、班级和课程(教师数据暂不考虑),由管理员admin管理。

学生可以浏览与自己相关的这些基础数据。

1基础数据设计

我们用PowerDesigner来进行数据库的设计。

大致经过三个步骤:

1)概念模型设计

2)逻辑模型设计

3)物理模型设计

概念模型设计

为了使用继承的关系(学生继承于登录用户)以及复杂的数据联系,需要修改PowerDesigner概念模型的设置,即进行以下操作:

1)点击菜单“ToolsModelOptions…”

PowerDesigner中设置数据模型的特性——菜单

2)左边选择“ModelSettings”,右边点击“Notation”下拉框,选择“E/R+Merise”,再点击“OK”即可。

PowerDesigner中设置数据模型的特性——对话框

所设计的概念模型如下图所示:

基础数据概念模型

逻辑模型设计

逻辑模型可以从概念模型自动转化而得,在PowerDesigner中操作如下:

1)选取欲转换的概念模型(此处为“基础数据概念模型”),再选取菜单“”——“”,如下:

概念模型转换为逻辑模型——菜单操作

2)在对话框中输入逻辑模型名称

逻辑模型名称设置

3)点击“确定”,得到逻辑模型:

转换得到的逻辑模型

4)添加学生与登录用户之间的依赖关系,如图所示(注意“学生”方的基是“0..n”):

学生与登录用户之间的关系

5)得到逻辑模型,如下图:

基础数据的逻辑模型

6)手工将“学生”表“登录名”字段设为主键,同时将它改更加好听的名称:

“学号”,编码改为“studentId”。

如下图所示:

设置“学生”的主键

类似地,将“班级”中“专业编码”改为好听的“专业”,将“选修”及“班级可选修”中的“授课编码”改为“课程”,将“班级可选修”中的“班级编号”改为“班级”。

7)最后,确保所有的表都将会生成,特别是“登录用户”表需要手工设置。

具体的菜单操作为“Model”“Entities…”,对话框设置见下图标注:

确保所有的表都将会生成

最终得到的逻辑模型见下图:

最终的逻辑模型

物理模型

同样,物理模型可由逻辑模型自动转换而来。

操作如下:

1)菜单操作过程为:

“Tools”——“GeneratePhysicalDataModel…”,见下图。

逻辑模型转换为物理模型——菜单操作

2)在弹出的对话框中选择数据库类型,给出物理模型的名称

物理模型数据库类型及名称设置

3)得到物理模型

自动转换得到的物理模型

生成创建数据库的脚本

1)设置数据库类型。

菜单操作为“database”“ChangeCurrentDBMS…”,在弹出的对话框“DBMS”中选择正确的数据库类型。

注意,如果数据库类型即便为“MicrosoftSQLServer2005”,那么也要选择“MicrosoftSQLServer2000”。

更改数据库类型

2)配置外键关联的实现类型为“Declarative”。

菜单操作为“Model”“References…”:

配置外键关联的实现类型

3)如果数据库为SQLSERVER2005,那么需要按照第1步(更改数据库类型),将数据库类型改回为“MicrosoftSQLServer2005”。

4)生成脚本。

菜单操作为“Database”“GenerateDatabase…”:

创建数据库脚本——菜单

5)设置脚本文件路径:

设置脚本文件路径

6)点击“确定”后,生成的创建脚本如下:

代码1.1基础数据表创建脚本

ifexists(select1

fromsys.sysreferencesrjoinsys.sysobjectsoon(o.id=r.constidando.type='

F'

wherer.fkeyid=object_id('

SC'

)ando.name='

FK_SC_SC_STUDENT'

altertableSC

dropconstraintFK_SC_SC_STUDENT

go

FK_SC_SC2_LECTURE'

dropconstraintFK_SC_SC2_LECTURE

class_sc'

FK_CLASS_SC_CLASS_SC_LECTURE'

altertableclass_sc

dropconstraintFK_CLASS_SC_CLASS_SC_LECTURE

FK_CLASS_SC_CLASS_SC2_STUDENTC'

dropconstraintFK_CLASS_SC_CLASS_SC2_STUDENTC

student'

FK_STUDENT_STUDENT_C_STUDENTC'

altertablestudent

dropconstraintFK_STUDENT_STUDENT_C_STUDENTC

FK_STUDENT_STUDENT_L_LOGINUSE'

dropconstraintFK_STUDENT_STUDENT_L_LOGINUSE

studentClass'

FK_STUDENTC_CLASS_MAJ_MAJOR'

altertablestudentClass

dropconstraintFK_STUDENTC_CLASS_MAJ_MAJOR

dropconstraintPK_SC

fromsysobjects

whereid=object_id('

andtype='

U'

droptableSC

dropconstraintPK_CLASS_SC

droptableclass_sc

altertablelecture

dropconstraintPK_LECTURE

lecture'

droptablelecture

altertableloginUser

dropconstraintPK_LOGINUSER

loginUser'

droptableloginUser

altertablemajor

dropconstraintPK_MAJOR

major'

droptablemajor

dropconstraintPK_STUDENT

droptablestudent

dropconstraintPK_STUDENTCLASS

droptablestudentClass

/*==============================================================*/

/*Table:

SC*/

createtableSC(

studentIdvarchar(20)notnull,

lectureIdvarchar(30)notnull

declare@CurrentUsersysname

select@CurrentUser=user_name()

executesp_addextendedproperty'

MS_Description'

'

选修'

user'

@CurrentUser,'

table'

'

学号'

column'

studentId'

课程'

lectureId'

addconstraintPK_SCprimarykeynonclustered(studentId,lectureId)

class_sc*/

createtableclass_sc(

lectureIdvarchar(30)notnull,

classNamevarchar(30)notnull

记录该授课所面向的班级,为生成学生选修记录提供范本'

班级'

className'

addconstraintPK_CLASS_SCprimarykeynonclustered(lectureId,className)

lecture*/

createtablelecture(

lectureNamevarchar(100)null

授课'

授课编码'

授课名称'

lectureName'

addconstraintPK_LECTUREprimarykeynonclustered(lectureId)

loginUser*/

createtableloginUser(

idvarchar(20)notnull,

passwordvarchar(50)null,

namevarchar(30)notnull,

telephonevarchar(50)null,

mobilephonevarchar(30)null,

emailvarchar(100)null,

addressvarchar(200)null,

zipCodevarchar(30)null,

contactvarchar(200)null

登录用户'

登录名'

id'

密码'

password'

姓名'

name'

电话'

telephone'

手机'

mobilephone'

email'

地址'

tab

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1