网络数据库课程设计报告Word下载.docx
- 文档编号:22291502
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:35
- 大小:729.20KB
网络数据库课程设计报告Word下载.docx
《网络数据库课程设计报告Word下载.docx》由会员分享,可在线阅读,更多相关《网络数据库课程设计报告Word下载.docx(35页珍藏版)》请在冰豆网上搜索。
(1)基本管理包含学生信息管理、课程信息管理、成绩信息管理;
(2)学生信息管理包含一个或多个学生;
(3)一门课程包含多名学生;
(4)每名学生都有不同的学号;
(5)每名学生都有自己对应的成绩;
(6)一个角色对应一个或多个用户。
二、数据库概念结构设计
根据数据库需求分析的结果,就可以确定程度中所包含的实体与实体之间的关系,作为数据库逻辑结构设计的基础与指导。
根据本系统的需要,可以归纳出以下实体:
学籍信息实体、课程信息实体、成绩信息实体、用户信息实体。
为了更好地理解各个实体及其含义,用E-R图对实体进行描述。
学生信息实体如图2-2所示。
课程信息实体如图2-3所示
成绩信息实体如图2-4所示。
三、数据库逻辑结构设计
系统数据库名称为:
学生信息管理系统,数据库中包括:
(1)学生信息管理;
(2)课程信息管理;
(3)学生成绩管理;
(4)用户管理。
下面列出各个表的数据结构,如表2-1~2-3所示。
表2-1学生信息管理的数据结构
字段名
类型
长度
学号
姓名
性别
入学成绩
出生日期
联系电话
家庭住址
char
int
datetime
10
8
2
12
30
表2-2课程信息管理的数据结构
课程号
课程名
学分
教师
课程性质
6
4
表2-3学生成绩管理的数据结构
分数
四、设置表与表之间的关系
一般情况下,数据库中所包含的表都不是独立存在的,而是表与表之间有一定的关系,称为关联。
如果数据库中的信息不能满足正常的依赖关系就会破坏数据的完整性和一致性。
根据本实例的特点,需要依次设置学籍信息管理、课程信息管理与成绩管理之间的关系,如图2-5所示。
图2-5系统关系图
五、文件夹及文件的设计
在开发学生信息管理系统之前,设计了如图所示的文件夹架构图,在开发时只需将相应文件保存到对应文件夹下即可,如图2-6所示。
2.1
图2-6文件夹结构图
2.3主要模块流程图
登录系统流程图:
如图2-7所示。
第三章
系统实现
3.1SQLServer服务器端数据处理
一、创建insert触发器
创建insert触发器方法,如图3-1所示。
图3-1触发器
二、创建存储过程
创建存储过程方法,如图3-2所示。
图3-2存储过程
3.2客户界面的实现
一、用户登录界面
用户登录窗体,如图3-3所示。
图3-3用户登录窗体
本系统是通过用户登录进而操作的。
用户登录界面中[登录]按钮的代码为:
privatevoidbtnok_Click(objectsender,EventArgse)
{
using(SqlConnectioncon=newSqlConnection(strcon))
if(txtname.Text=="
"
||txtpassword.Text=="
)
MessageBox.Show("
请输入用户名或密码!
);
}
else
try
this.Hide();
con.Open();
SqlCommandcmd=newSqlCommand();
cmd.Connection=con;
cmd.CommandText="
select*from用户管理where用户名称='
+txtname.Text+"
'
and用户密码='
+txtpassword.Text+"
;
if(cmd.ExecuteScalar()!
=null)
学生管理系统主界面=new学生管理系统();
主界面.ShowDialog();
this.Close();
catch(Exceptioner)
MessageBox.Show(er.Message);
}
finally
con.Close();
二、主界面设计
系统主界面窗体,如图3-4所示。
图3-4系统主界面窗体
本实例主界面如图所示。
由图可知,“基本管理”菜单下面有学生信息管理、课程信息管理、成绩信息管理三个子菜单。
“用户管理”菜单下面有添加用户和浏览用户两个子菜单,用户方便操作人员查看所有有权登录系统的人员。
主界面代码为:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Windows.Forms;
using学生信息管理系统.用户管理;
namespace学生信息管理系统
{
publicpartialclass学生管理系统:
Form
public学生管理系统()
InitializeComponent();
privatevoid学生信息管理ToolStripMenuItem_Click(objectsender,EventArgse)
学生信息管理student=new学生信息管理();
student.ShowDialog();
privatevoid课程信息管理ToolStripMenuItem_Click(objectsender,EventArgse)
课程信息管理course=new课程信息管理();
course.ShowDialog();
privatevoid成绩信息管理ToolStripMenuItem_Click(objectsender,EventArgse)
成绩信息管理score=new成绩信息管理();
score.ShowDialog();
privatevoid添加用户ToolStripMenuItem_Click(objectsender,EventArgse)
添加用户add=new添加用户();
add.ShowDialog();
privatevoid浏览用户ToolStripMenuItem_Click(objectsender,EventArgse)
修改用户update=new修改用户();
update.ShowDialog();
privatevoid浏览用户ToolStripMenuItem1_Click(objectsender,EventArgse)
浏览用户browse=new浏览用户();
browse.ShowDialog();
privatevoid退出系统ToolStripMenuItem_Click(objectsender,EventArgse)
}
三、学生信息管理
学生信息管理窗体,如图3-5所示。
图3-5学生信息管理
其中课程信息管理与成绩信息管理的设定方法与学生信息管理的方法类似。
学生信息管理的代码为:
usingSystem.Data.SqlClient;
publicpartialclass学生信息管理:
public学生信息管理()
{
privateDataSetmyDataSet=newDataSet();
//初始化一下新的DataSet
privateCurrencyManagermyBind;
//用于数据导航控制
privatevoid学生信息管理_Load(objectsender,EventArgse)
stringstrcon="
DataSource=.;
InitialCatalog=学生信息管理系统;
IntegratedSecurity=True"
SqlConnectioncon=newSqlConnection(strcon);
SqlDataAdapteradp=newSqlDataAdapter("
select*from学生信息管理"
con);
adp.Fill(myDataSet,"
学生表"
this.dataGrid1.DataSource=myDataSet.Tables[0];
myBind=(CurrencyManager)this.BindingContext[myDataSet,"
];
//设置dataGridView1数据导航控制
this.dataGrid1.Select(myBind.Count-1);
myBind.Position=myBind.Count-1;
this.dataGrid1.CurrentRowIndex=myBind.Position;
SetBindings();
privatevoidSetBindings()
textBox1.DataBindings.Add("
Text"
myDataSet,"
学生表.学号"
textBox2.DataBindings.Add("
myDataSet,"
学生表.姓名"
textBox3.DataBindings.Add("
学生表.性别"
textBox4.DataBindings.Add("
学生表.入学成绩"
textBox5.DataBindings.Add("
学生表.出生日期"
textBox6.DataBindings.Add("
学生表.联系电话"
textBox7.DataBindings.Add("
学生表.家庭住址"
privatevoidtoolBar1_ButtonClick(objectsender,ToolBarButtonClickEventArgse)
if(e.Button.ToolTipText=="
首记录"
this.dataGrid1.UnSelect(myBind.Position);
//取消原选中的行
myBind.Position=0;
this.dataGrid1.Select(myBind.Position);
//选中当前行
this.dataGrid1.CurrentRowIndex=myBind.Position;
//移动表头指针图标
return;
上记录"
if(myBind.Position==0)
已经到了第一条记录!
this.dataGrid1.UnSelect(myBind.Position);
myBind.Position--;
this.dataGrid1.Select(myBind.Position);
下记录"
if(myBind.Position==myBind.Count-1)
已经到了最后一条记录!
myBind.Position++;
尾记录"
)
myBind.Position=myBind.Count-1;
插入"
if(textBox1.Text!
="
&
textBox2.Text!
textBox3.Text!
textBox4.Text!
textBox5.Text!
textBox6.Text!
textBox7.Text!
SqlConnectioncon=newSqlConnection(strcon);
stringcmd="
insertinto学生信息管理(学号,姓名,性别,入学成绩,出生日期,联系电话,家庭住址)values('
+textBox1.Text+"
'
+textBox2.Text+"
+textBox3.Text+"
+textBox4.Text+"
+textBox5.Text+"
+textBox6.Text+"
+textBox7.Text+"
)"
SqlCommandmycmd=newSqlCommand(cmd,con);
mycmd.ExecuteNonQuery();
myDataSet.Tables["
].Rows[myBind.Position].BeginEdit();
].Rows[myBind.Position].EndEdit();
myDataSet.Tables["
].AcceptChanges();
插入成功!
必须填满所有字段值!
保存数据记录发生"
+er.ToString());
修改"
删除"
DialogResultr=MessageBox.Show("
是否删除当前记录!
"
删除当前记录!
MessageBoxButtons.YesNo,MessageBoxIcon.Question);
intss=(int)r;
if(ss==6)
deletefrom学生信息管理where学号="
+textBox1.Text;
].Rows[myBind.Position].Delete();
删除成功!
删除记录错误信息:
if(e.Button.ToolTipText=="
退出"
privatevoidbutton1_Click(objectsender,EventArgse)
myDataSet.Clear();
stringstr=textBox8.Text;
stringsqlcmd="
select*from学生信息管理where学号="
+str;
SqlConnectioncon=newSqlConnection(strcon);
SqlDataAdaptermycmd=newSqlDataAdapter(sqlcmd,con);
mycmd.Fill(myDataSet,"
dataGrid1.DataSource=myDataSet.Tables[0];
myBind=(CurrencyManager)this.BindingContext[myDataSet,"
this.dataGrid1.Select(myBind.Count-1);
catch
没有相关学号的信息!
四、用户管理
用户管理的各窗体如图3-6~3-8所示。
其中包括添加用户、修改用户和浏览用户。
添加用户窗体,如图3-6所示。
图3-6添加用户窗体
添加用户的代码为:
namespace学生信息管理系统.用户管理
publicpartialclass添加用户:
public添加用户()
privatevoidbtnok_Click(objectsender,EventArgse)
if(txtid.Text=="
||txtname.Text=="
||txtpassword.Text=="
||txtremark.Text=="
请将用户信息填写完整!
if(con.State==ConnectionState.Closed)
con.Op
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 数据库 课程设计 报告