学籍管理系统课程设计报告Word格式.docx
- 文档编号:7115151
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:32
- 大小:605.24KB
学籍管理系统课程设计报告Word格式.docx
《学籍管理系统课程设计报告Word格式.docx》由会员分享,可在线阅读,更多相关《学籍管理系统课程设计报告Word格式.docx(32页珍藏版)》请在冰点文库上搜索。
采用和实施学生信息管理系统不仅仅是为了提高工作效率。
应该看到,在实施学生信息管理系统后,经过整合的、较为全面、准确、一致和相容的信息不仅可以让学校领导对本学校学生资源的现状有一个比较全面和准确的认识,同时也可以生成综合的分析报表供学校领导人在决策时参考。
摘要:
本次课程设计采用SQL数据库与Delphi结合的方式,通过用SQL建立起基本表,然后分析各表之间的联系,以及要实现的功能,然后通过Delphi来设计用户操作界面,从而完成学生管理系统的设计。
一、绪论
SQL是一种介于关系代数与关系演算之间的语言,其功能包括数据查询(query)、数据操作(datamanipulation)、数据定义(datadefinition)和数据控制(datacontrol)四个方面,是一个通用的,功能极强的关系数据库语言。
目前SQL语言已经成为关系数据库的标准语言。
SQL具有高度统一、高度非过程化、采用面向集合操作方式、支持三级模式结构、具有一种语法、两种使用方式、结构简洁、易学易用的特点,所以为广大用户和业界所接受,成为国际标准。
做学生管理系统是由于现在学校学生数量很多,而学生信息的管理及其课程管理与选课过程都是一个大量的重复的工作,且信息散乱,本系统的作用就是使这些散乱的信息具体化、直观化。
二、系统需求分析
2、1开发软件
采用Delphi可视化编译环境,开发windows应用程序;
采用SQLSever数据库作为支撑,构建一套规范且符合教学管理需求的教学管理系统。
2、2设计方法
采用规范式设计法,分为四个阶段:
需求分析、概念设计、逻辑设计、物理设计。
数据库采用基于E-R模型以及基于3NF的设计方法。
2、4数据字典
●数据项
学生表(XS)
名称
数据类型
大小
约束
Xh(主键)
char
10
notnull
Xm
Xb
null
Cssj
char
Zy
Zxf
Bz
null
Kch
Notnull
课程表(XS_KC)
Notnull
Xch
100
Cj
性别表(XBM)
Char
Xbm
●数据约束
(1)实体完整性约束:
基本关系的所有主键的属性都不能取空值且主键作为唯一性标识。
需要满足该约束的主键:
学生表(XS).学号(xh)、课程表(KCB).课程编号(kch).
(2)参照完整性约束:
外键的值只能取空值或等于关联主键的值。
需要满足该约束的外键:
学生表(XS).学号与课程表(KCB)
课程号外键关联.
(3)用户定义完整性约束:
针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求。
需要满足该约束的属性:
学生表(XS).学号,课程表(KCB).课程编号,.都不能为空,学生表(XS).性别只能为男或女。
●数据流图
●数据存储信息
XS表:
Xh(主键)、Xb、Xb、Cssj、Zy、Zxf、Bz、Kch(外键)。
KC表:
Kch(主键)、kCM、Cj。
XBM表:
Xb、Xbm。
三、关系数据库的模型建立
3、1系统概念模型
学生信息管理E-R图
3、2SQL表关系图
3、3数据库的物理结构设计
数据库物理模型可以从概念模型转化形成,物理模型设计产生数据库数据库的物理结构,即将数据库设计映射到一个具体的类型的物理数据库上。
逻辑结构中的实体会形成物理结构中的数据表。
将该数据库设计映射到SQL数据库上,生成学生管理系统的数据库表XS、KCB、XBM,如下为这三个表的结构:
四、系统实现
4、1数据库建立
使用SQL语言在SQLServer2000的查询分析器中建基本表。
具体处理流程如下:
创建XS表:
创建XS_KC表:
创建XBM表:
我们还可以在企业管理器中创建表,操作比较简单,在这里不做过多解释。
4、2Delphi应用程序开发
使用Delphi7作为开发工具,完成与SQLServer数据库的连接,以及用户界面的设计。
4、2、1系统功能模块图
系统各功能模块图
●功能的实现
添加功能:
使用ADOQuery组件的Append方法或SQL语句添加数据。
修改功能:
使用ADOQuery组件的Edit方法或SQL语句修改数据。
删除功能:
使用ADOQuery组件的Delete方法或SQL语句删除数据。
查询功能:
通过编辑ADOQuery组件的SQL语句进行查询。
信息的显示:
对于批量数据使用DBGrid组件显示,对于单个数据使用Edit、DBEdit、Combobox以及DataTimepicker等组件显示。
数据的输入:
使用Edit、DBEdit、Combobox以及DataTimepicker等组件进行数据的输入。
●连接数据库
采用ADO方式连接和访问数据库。
●使用ADOConnection组件连接SQLServer数据库:
连接数据库
属性设计:
4、4窗体设计
●主界面:
查询界面:
修改界面:
插入界面:
删除界面:
附录
Delphi应用程序源代码
一、工程代码
数据库链接:
unitUnit1;
interface
uses
SysUtils,Classes,DB,ADODB;
type
TXSCJDM=class(TDataModule)
XSCJADOConnection:
TADOConnection;
XSCJADOCommand:
TADOCommand;
XSCJADODataSet:
TADODataSet;
ADOStoredProc1:
TADOStoredProc;
XSCJDataSource:
TDataSource;
private
{Privatedeclarations}
public
{Publicdeclarations}
end;
var
XSCJDM:
TXSCJDM;
implementation
{$R*.dfm}
end.
主界面
unitUnit6;
Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,
Dialogs,Menus,ExtCtrls,jpeg;
TXSCJGL=class(TForm)
Panel1:
TPanel;
MainMenu1:
TMainMenu;
MainMenu2:
N1:
TMenuItem;
N3:
Select_Button:
Update_Button:
Delete_Button:
N6:
Insert_Button1:
Insert_Button2:
Image1:
TImage;
Image2:
procedureSelect_ButtonClick(Sender:
TObject);
procedureInsert_Button1Click(Sender:
procedureUpdate_ButtonClick(Sender:
procedureDelete_ButtonClick(Sender:
XSCJGL:
TXSCJGL;
usesUnit7,Unit8,Unit9,Unit3;
procedureTXSCJGL.Select_ButtonClick(Sender:
begin
XSCJGL.Visible:
=false;
CX.Show;
end;
procedureTXSCJGL.Insert_Button1Click(Sender:
XSCJGL.Visible:
CR1.Show;
procedureTXSCJGL.Update_ButtonClick(Sender:
XG.Show;
procedureTXSCJGL.Delete_ButtonClick(Sender:
SC.Show;
查询:
unitUnit7;
Dialogs,Grids,StdCtrls,ExtCtrls,DBGrids,jpeg;
TCX=class(TForm)
Panel2:
Label1:
TLabel;
Edit1:
TEdit;
Button1:
TButton;
Button2:
Panel3:
DBGrid1:
TDBGrid;
Label2:
procedureButton1Click(Sender:
procedureButton2Click(Sender:
CX:
TCX;
usesUnit6,Unit1;
procedureTCX.Button1Click(Sender:
Var
Xh,Sql:
String;
Xh:
=Edit1.Text;
Sql:
='
selectXH,XM,XBM,CSSJ,ZY,ZXF,BZfromXS,XBMwhereXH='
+'
'
+XH+'
andXBM.XB=XS.XB'
;
XSCJDM.XSCJADODataSet.Active:
XSCJDM.XSCJADODataSet.CommandText:
=Sql;
=true;
if(XSCJDM.XSCJADODataSet.FieldValues['
XH'
]=NULL)then
showmessage('
要查询的学生数据不存在!
);
procedureTCX.Button2Click(Sender:
CX.Visible:
end
插入成绩
unitUnit2;
Dialogs,StdCtrls,jpeg,ExtCtrls;
TForm1=class(TForm)
Label3:
Edit2:
Edit3:
Label4:
Form1:
TForm1;
procedureTForm1.Button1Click(Sender:
Xh,Kch,Cj,Xf,Sql1,Sql2,Sql3,Temp1,Temp2:
string;
Xh:
Kch:
=Edit2.Text;
Cj:
=Edit3.Text;
Sql1:
selectXHfromXSwhereXH='
+Xh+'
XSCJDM.XSCJADODataSet.Active:
XSCJDM.XSCJADODataSet.CommandText:
=Sql1;
Temp1:
=XSCJDM.XSCJADODataSet.FieldValues['
];
if(Temp1:
<
>
NULL)then
begin
Sql2:
selectKCH,XFFromKCwhereKCH='
+Kch+'
=Sql2;
Temp2:
KCH'
Xf:
XF'
if(Temp2:
Sql3:
InsertXS_KCvalues('
'
+Cj+'
Xf+'
)'
XSCJDM.XSCJADOCommand.CommandText:
=Sql3;
XSCJDM.XSCJADOCommand.Execute;
插入成功!
)
procedureTForm1.Button2Click(Sender:
CR2.Visible:
插入学生信息
unitUnit3;
Dialogs,Menus,ExtCtrls,StdCtrls,jpeg;
TCR1=class(TForm)
Label5:
Label6:
Edit4:
Edit5:
Label7:
RadioButton1:
TRadioButton;
RadioButton2:
Label8:
Label9:
Memo1:
TMemo;
Label10:
CR1:
TCR1;
usesUnit1,Unit6;
procedureTCR1.Button1Click(Sender:
Xh,Xm,Xb,Cssj,Zy,Zxf,Bz,Sql1,Sql2:
Xm:
ifRadioButton1.Checked=truethen
Xb:
1'
else
0'
Zy:
=Edit4.Text;
Cssj:
Zxf:
=Edit5.Text;
Bz:
=Memo1.Text;
Sql1:
if(XSCJDM.XSCJADODataSet.FieldValues['
]<
该学生数据存在!
sql2:
InsertXSvalues('
+Xm+'
+Xb+'
+Cssj+'
+Zy+'
+Zxf+'
+Bz+'
插入数据成功!
procedureTCR1.Button2Click(Sender:
CR1.Close;
unitUnit8;
Dialogs,StdCtrls,ExtCtrls,jpeg;
TXG=class(TForm)
TLabel
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学籍 管理 系统 课程设计 报告
![提示](https://static.bingdoc.com/images/bang_tan.gif)