VS20**年图书管理系统报告 - 范文中心

VS20**年图书管理系统报告

08/06

图书信息管理系统

系别:计算机科学与技术 班级:计11-3班 姓名: 学号:

总成绩: 评语:

指导教师签字: 日期:

目录

一 课题主要内容介绍................................................. 1

1.1课题概述 .................................................... 1 1.2 课题设计背景与意义.......................................... 2 1.3运行环境说明 ................................................ 2 二 系统设计......................................................... 2

2.1 需求分析.................................................... 2 2.2 系统设计思想与原则.......................................... 2 2.3 业务流程.................................................... 3 2.4 数据流程图.................................................. 5

2.4.1 数据E-R 图............................................ 5 2.4.2 数据流程图............................................ 6 2.5 系统流程图.................................................. 6 2.6系统功能模块划分 ............................................ 7

2.6.1管理员功能 ............................................ 7 2.6.2用户功能 .............................................. 7 2.7 数据库设计.................................................. 8

2.7.1 数据库逻辑结构设计.................................... 8 2.7.2 数据库详细设计........................................ 9

三 系统实现........................................................ 12

3.1 主要模块实现及说明......................................... 12

3.1.1 主程序流程图......................................... 12 3.1.2 主要模块代码......................................... 12 3.2 运行中遇到的问题........................................... 29 四 系统测试与结果.................................................. 29

4.1系统测试的目的和意义 ....................................... 29 4.2 系统测试................................................... 30

4.2.1 读者身份............................................. 30 4.2.2 管理员身份........................................... 38 4.3 系统测试结果分析........................................... 44 五 课题收获与总结.................................................. 45

5.1 课程设计心得............................................... 45

一 课题主要内容介绍

1.1课题概述

设计一个以数据库为中心的图书馆信息管理系统 ● 系统维护

权限设置

角色设定(角色分读者、图书馆业务人员、系统管理员);

● 图书信息维护:

图书数据录入 图书信息修改 图书信息删除

● 读者信息维护

读者数据录入 读者信息修改 读者信息删除

● 查询图书

按照条形码查找图书 按照书名查找图书 按照类别查找图书 按照作者查找图书 按照书架查找图书

● 借书

如果借书证能借书并且图书馆有这本书,则能借;

● 还书

如果没有超期,则能还;

● 异常处理

无图书证或图书证异常不能借阅 无书不能借阅 图书超期罚款 图书超期未还提醒

● 统计

读者借书排名 图书借出排名 还书超期排名 需要图形统计;

1.2 课题设计背景与意义

图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高

1.3运行环境说明

语言:

C#语言 操作系统:

Microsoft Visual Studio 2010 数据库:

SQL Server 2008R2

二 系统设计

2.1 需求分析

1) 必须学生和教师才能借书,可以归还图书,如果超期要显示罚款,缴纳罚款处理后,才允许继续借书。

2) 所有用户都可以在网页上搜索图书(可按多种条件搜索,如作者,出版社,书名),显示在网页上的图书要有详细信息(书的信息,是否在馆,在哪个借阅处)。

3) 管理员可以添加图书,修改图书,删除图书等。还可以添加用户,修改,删除用户信息。还可以查看所有人员的信息 。可以查看读者借书排名,图书借出排名,还书超期排名。

2.2 系统设计思想与原则

∙ 本系统要达到的目标有如下几点: 1)书入库操作要简单方便; 2)读者能查询图书借阅状态; 3)读者自助续借图书的功能 ; 4)读者账号管理挂失功能 ; ∙ 开发本系统的可行性

由于本系统可使学校图书馆工作发生“简捷化、快速化、自动化”的改革,加之如今的社会各行各业都在走信息化管理的道路,可见开发本系统的重要性。在得到学校大力支持的前提下,本系统的开发在经济上得到了可靠的保证。开发人员由我校信息专业的同学组成,所以开发人员安全免费,这无疑给系统开发带来了更大的简便。

2.3 业务流程

顶层图:

图2-1 登录系统业务流程图

1 借书

图2-2 借书业务流程图

2还书

图2-3还书业务流程图

3 图书信息维护

图2-4 图书信息维护业务流程图

4读者信息维护

图2-5 读者信息维护业务流程图

2.4 数据流程图

2.4.1 数据E-R 图

图2-6 数据E-R 图

2.4.2 数据流程图

顶层数据流程图

图2-7 数据流程图

2.5 系统流程图

图2-8系统流程图

2.6系统功能模块划分

2.6.1管理员功能

图2-9 管理员功能模块划分

2.6.2用户功能

图2-10用户功能模块划分

2.7 数据库设计

2.7.1 数据库逻辑结构设计

图书模型设计

图2-11 图书模型设计

借还书模型设计

图2-12 借还书模型设计

读者模型设计

图2-13 读者模型设计

2.7.2 数据库详细设计

1 读者表

2-14 读者数据库表

图2-15读者表的设计

2 图书表

图2-16图书表

图2-17 图书表设计

3 管理员表

图2-18 管理员表

图2-19 管理员表设计

4 借还书

图2-20 借还书表

图2-21 借还书表设计

三 系统实现

3.1 主要模块实现及说明

3.1.1 主程序流程图

图3-1 主程序流程图

3.1.2 主要模块代码

1 登录界面

图3-2 登录主界面

登录主界面代码:

int j = comboBox1.SelectedIndex;

string shenfen = comboBox1.Items[j].ToString(); userid = textBox1.Text;//内容赋值,将textBox 输入的内容赋值到变量中 string pwd = textBox2.Text; textBox1.Clear();

textBox2.Clear();

string connString = "Data Source= . ;Initial Catalog=TSGL; User ID=sa; pwd=sa";// 创建 Connection 对象

SqlConnection connection = new SqlConnection(connString);// 打开数据库连接

connection.Open(); int count=0;

if (shenfen == "教师")//通过身份判断在不同表中寻找数值 {

string str_sql1 = "select count(*) from Teacher where UserName='" + userid + "' and PassWord='" + pwd + "'";//SQL语句 SqlCommand command = new SqlCommand(); command.Connection = connection; command.CommandText = str_sql1;

count = Convert.ToInt32(command.ExecuteScalar()); }

else if (shenfen == "学生") {

string str_sql1 = "select count(*) from Student where UserName='" + userid + "' and PassWord='" + pwd + "'";

SqlCommand command = new SqlCommand(); command.Connection = connection;

command.CommandText = str_sql1; count = Convert.ToInt32(command.ExecuteScalar()); } else

if (shenfen == "管理员") {

string str_sql1 = "select count(*) from Worker where UserName='" + userid + "' and PassWord='" + pwd + "' and Status='" + shenfen + "'";

SqlCommand command = new SqlCommand(); command.Connection = connection; command.CommandText = str_sql1;

count = Convert.ToInt32(command.ExecuteScalar()); }

f2 = this;

if (count > 0 && shenfen == "教师" ) {

f2.Hide();

Form1 f1 = new Form1(shenfen,userid); f1.Show(); }

else if (count > 0 && shenfen == "管理员") {

f2.Hide();

Form1 f1 = new Form1(shenfen,userid); f1.Show(); }

else if (count > 0 && shenfen == "学生") {

f2.Hide();

Form1 f1 = new Form1(shenfen,userid); f1.Show(); }

else {

MessageBox.Show("用户名或密码错误");

//comboBox1.Items.Clear();// combobox清空只有此操作一种与textbox.clear 效果不一致。他的作用是删除combobox 编辑项中的所有项 }

简要说明:输入用户名和密码,选择要登录的身份。如果用户名或者密码出错,则会弹出错误提示,并会清空之前填写的信息;如果身份选择与用户名不符合,也将弹出提示错误。

2 主界面

图3-3 管理系统主要界面

管理系统界面代码:

Private void menuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e) {

string dt = System.DateTime.Now.ToString(); label8.Text = dt;

string connString = "Data Source= . ;Initial Catalog=TSGL; User ID=sa; pwd=sa";// 创建 Connection 对象

SqlConnection connection = new SqlConnection(connString); // 打开数据库连接

connection.Open();

label9.Text = str1; //将身份登录自动显示 string name=""; //将身份名字自动显示 if (str1 == "管理员") {

string str_sql1 = "select * from Worker"; SqlCommand command = new SqlCommand(str_sql1,connection);

command.Connection = connection; command.CommandText = str_sql1;

SqlDataReader reader = command.ExecuteReader(); while(reader.Read()) {

if(reader["UserName"].ToString()==str2) name = reader["Name"].ToString(); label7.Text = name; }

// count = Convert.ToInt32(command.ExecuteScalar()); }

else if (str1 == "教师") {

string str_sql1 = "select * from Teacher"; SqlCommand command = new SqlCommand(str_sql1, connection);

command.Connection = connection; command.CommandText = str_sql1;

SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) {

if (reader["UserName"].ToString() == str2) name = reader["Name"].ToString(); label7.Text = name; } }

else if (str1 == "学生")

{

string str_sql1 = "select * from Student"; SqlCommand command = new SqlCommand(str_sql1, connection);

command.Connection = connection; command.CommandText = str_sql1;

SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) {

if (reader["UserName"].ToString() == str2) name = reader["Name"].ToString(); label7.Text = name; } }

connection.Close(); }

//当点击借书按钮则跳转借书页面

private void 借书ToolStripMenuItem_Click(object sender, EventArgs e) {

if (str1 == "游客")//通过身份判断是否能访问界面 {

MessageBox.Show("对不起,您没有操作权限"); }

else if (str1 == "管理员" || str1 == "操作人员") {

MessageBox.Show("对不起,您所在的权限无法执行此操作"); } else {

lendbook us1 = new lendbook(str1, str2); panel1.Controls.Clear(); panel1.Controls.Add(us1);

us1.Show(); } }

private void 图书信息ToolStripMenuItem_Click(object sender, EventArgs e) {

searchbook us4 = new searchbook(); panel1.Controls.Clear(); panel1.Controls.Add(us4); us4.Show(); }

//当点击不同按钮,则跳转不同功能页面

private void 借阅历史ToolStripMenuItem_Click(object sender, EventArgs e) {

lendhistory us6 = new lendhistory(str1, str2); panel1.Controls.Clear(); panel1.Controls.Add(us6); us6.Show(); }

private void 罚款历史ToolStripMenuItem_Click(object sender, EventArgs e) {

fakuanhistory us7 = new fakuanhistory(str1, str2); panel1.Controls.Clear(); panel1.Controls.Add(us7); us7.Show();

}

private void 删除ToolStripMenuItem_Click(object sender, EventArgs e) {

if (str1 == "教师" || str1 == "学生" || str1 == "游客")

MessageBox.Show("对不起,您没有操作权限");

else

{

deletebook us20 = new deletebook();

panel1.Controls.Clear();

panel1.Controls.Add(us20);

us20.Show();

}

}

private void 人员信息删除ToolStripMenuItem_Click(object sender, EventArgs e)

{

if (str1 == "教师" || str1 == "学生" || str1 == "操作人员" || str1 == "游客")

{

MessageBox.Show("对不起,您没有操作权限");

}

else

{

UserControl16 us16 = new UserControl16();

panel1.Controls.Clear();

panel1.Controls.Add(us16);

us16.Show();

}

}

简要说明:单击不同按钮,则会弹出相应功能的界面,并可以进行相应的操作。右边则会有登录人的身份,姓名,日期的提示。还有可以注销系统,回到登录界面。

3 借书系统

private void button2_Click(object sender, EventArgs e)

{

Bookid = this.textBox3.Text;//内容赋值,将textBox 输入的内容赋值到变量中

string BorrowYear = this.textBox7.Text;

string BorrowMonth = this.textBox8.Text;

string BorrowDay = this.textBox9.Text;

string ReturnYear = this.textBox5.Text;

string ReturnMonth = this.textBox11.Text;

string ReturnDay = this.textBox10.Text;

string connString = "Data Source= . ;Initial Catalog=TSGL; User ID=sa; pwd=sa";

// 创建 Connection 对象

SqlConnection connection = new SqlConnection(connString); // 打开数据库连接

connection.Open();

int count = 0;

if (str1 == "学生")

{

count = 0;

string str_sql1 = "select count(*) from Student where ID ='" + textBox1.Text + "'and authority = '可借' ";

SqlCommand command = new SqlCommand();

command.Connection = connection;

command.CommandText = str_sql1;

count= Convert.ToInt32(command.ExecuteScalar()); if (count != 0)

{

//将输入数据写入数据库

string str_sql = "insert into BorrowBook values ('" + textBox1.Text + "' , '" + Bookid + "', '" + BorrowYear + "', '" + BorrowMonth + "', '" + BorrowDay + "', '" + ReturnYear + "', '" + ReturnMonth + "', '" + ReturnDay + "',0)";

SqlCommand cmd = new SqlCommand(str_sql,

connection); //用于执行SQL 语句

cmd.ExecuteNonQuery();

connection.Close();

string connString1 = "Data Source= . ;Initial Catalog=TSGL; User ID=sa; pwd=sa";

// 创建 Connection 对象

SqlConnection connection1 = new

SqlConnection(connString1);

// 打开数据库连接

connection1.Open();

string sql1 = "select BookName,BookWriter,BookBorn from Book where BookId in(select Bookid from BorrowBook where

BorrowBook.ID='" + textBox1.Text + "' and BorrowBook.OkReturn !='已还')";

cmd = new SqlCommand(sql1, connection1); //用于执行SQL 语句

cmd.ExecuteNonQuery();

DataSet ds1 = new DataSet();

SqlDataAdapter da1 = new SqlDataAdapter(sql1, connection1);

da1.Fill(ds1);

dataGridView1.DataSource = ds1.Tables[0];

string sql2 = "update Book set BookRentNum

=BookRentNum+1 , BookCount = BookCount-1 where Book.BookId ='" + textBox3.Text + "'";

cmd = new SqlCommand(sql2, connection1); //用于执行SQL 语句

cmd.ExecuteNonQuery();

string sql3 = "update Student set BorrowNum =BorrowNum+1 where Student.ID ='" + textBox1.Text + "'";

cmd = new SqlCommand(sql3, connection1); //用于执行SQL 语句

cmd.ExecuteNonQuery();

connection1.Close();

}

else

{

MessageBox.Show("对不起,您的帐号已被冻结,请及时缴纳罚款解冻");

}

}

简要说明:直接显示读者的相关资料,然后填写想要借阅的图书的编号,及归还日期。双击按钮之后,在右侧则会显示借阅的状态。如果出现所借图书没有库存,则弹出提示;如果读者超期还书,则提醒帐号已被冻结。

4 添加删除信息

图3-4 人员信息删除界面

删除代码:

private void button1_Click_1(object sender, EventArgs e)

{

string connString = "Data Source= . ;Initial Catalog=TSGL; User ID=sa; pwd=sa";

// 创建 Connection 对象

SqlConnection connection = new SqlConnection(connString); // 打开数据库连接

connection.Open();

//将输入数据写入数据库

string str_sql = "insert into Worker values ('" +

textBox1.Text + "' , '" + textBox3.Text + "', '" + textBox7.Text + "', '" + textBox4.Text + "', '" + textBox5.Text + "', '" + textBox2.Text + "', '" + textBox6.Text+ "')";

SqlCommand cmd = new SqlCommand(str_sql, connection); //用于执行SQL 语句

cmd.ExecuteNonQuery();

MessageBox.Show("管理员添加成功!");

connection.Close();

}

//删除不想要的信息

private void button1_Click_1(object sender, EventArgs e)

{

int j = comboBox1.SelectedIndex;

string shenfen = comboBox1.Items[j].ToString();

if (shenfen =="学生" )

{

string connString = "Data Source= . ;Initial

Catalog=TSGL; User ID=sa; pwd=sa";// 创建 Connection 对象

SqlConnection connection = new

SqlConnection(connString);

// 打开数据库连接

connection.Open();//将输入数据写入数据库

string str_sql = "delete from Student where ID ='" + textBox1.Text + "'";

SqlCommand cmd = new SqlCommand(str_sql, connection); //用于执行SQL 语句

cmd.ExecuteNonQuery();

MessageBox.Show("学生删除成功!");

connection.Close();

}

else if(shenfen == "教师")

{

string connString = "Data Source= . ;Initial

Catalog=TSGL; User ID=sa; pwd=sa";// 创建 Connection 对象

SqlConnection connection = new

SqlConnection(connString);

// 打开数据库连接

connection.Open();//将输入数据写入数据库

string str_sql = "delete from Teacher where ID ='" + textBox1.Text + "'";

SqlCommand cmd = new SqlCommand(str_sql, connection); //用于执行SQL 语句

cmd.ExecuteNonQuery();

MessageBox.Show("教师删除成功!");

connection.Close();

}

else if(shenfen =="工作人员")

{

string connString = "Data Source= . ;Initial

Catalog=TSGL; User ID=sa; pwd=sa";

// 创建 Connection 对象

SqlConnection connection = new

SqlConnection(connString);

// 打开数据库连接

connection.Open();

//将输入数据写入数据库

string str_sql = "delete from Worker where ID ='" + textBox1.Text + "'";

SqlCommand cmd = new SqlCommand(str_sql, connection); //用于执行SQL 语句

cmd.ExecuteNonQuery();

MessageBox.Show("管理员删除成功!");

connection.Close();

}

}

5 查询图书信息

图3-5 图书信息检索界面

检索代码:

public partial class searchbook : UserControl

{

public searchbook()

{

InitializeComponent();

string connString = "Data Source= . ;Initial Catalog=TSGL; User ID=sa; pwd=sa";

// 创建 Connection 对象

SqlConnection connection = new SqlConnection(connString); // 打开数据库连接

connection.Open();

//显示图书信息

string sql1 = "select

BookID,BookType,BookWriter,BookName,BookBorn,BookCount,BookRentNum from Book where BookCount>0";

SqlDataAdapter da1 = new SqlDataAdapter(sql1, connection); DataSet ds1 = new DataSet();

da1.Fill(ds1);

dataGridView1.DataSource = ds1.Tables[0];

}

private void button1_Click(object sender, EventArgs e) {

textBox1.Clear();

}

private void button2_Click(object sender, EventArgs e) {

//int i = comboBox1.SelectedIndex;

//int j = comboBox1.SelectedIndex;

//string BookType = comboBox1.Items[i].ToString(); //string BookBorn = comboBox2.Items[j].ToString();

string connString = "Data Source= . ;Initial Catalog=TSGL; User ID=sa; pwd=sa";

// 创建 Connection 对象

SqlConnection connection = new SqlConnection(connString); // 打开数据库连接

connection.Open();

string sql1 = "select

BookId,BookType,BookName,BookWriter,BookBorn,BookCount,BookRentNum from Book where BookType = '" + textBox1.Text + "' or BookName='" + textBox1.Text + "' or BookBorn='" + textBox1.Text + "'";

SqlDataAdapter da1 = new SqlDataAdapter(sql1, connection); DataSet ds1 = new DataSet();

da1.Fill(ds1);

dataGridView1.DataSource = ds1.Tables[0];

connection.Close();

}

6 修改图书信息

图3-6 修改图书信息界面

修改图书信息代码:

public partial class xiugaibook : UserControl

{

public xiugaibook()

{

InitializeComponent();

string connString = "Data Source= . ;Initial Catalog=TSGL; User ID=sa; pwd=sa";

// 创建 Connection 对象

SqlConnection connection = new SqlConnection(connString); // 打开数据库连接

connection.Open();

//显示图书信息

string sql1 = "select

BookID,BookType,BookWriter,BookName,BookBorn,BookCount,BookRent,BookR entNum from Book";

SqlDataAdapter da1 = new SqlDataAdapter(sql1, connection); DataSet ds1 = new DataSet();

da1.Fill(ds1);

dataGridView1.DataSource = ds1.Tables[0];

}

private void button1_Click(object sender, EventArgs e) {

string connString = "Data Source= . ;Initial Catalog=TSGL; User ID=sa; pwd=sa";

// 创建 Connection 对象

SqlConnection connection = new SqlConnection(connString); // 打开数据库连接

connection.Open();

//将输入数据写入数据库

string ID = textBox5.Text;

string Type = textBox2.Text;

string Name = textBox1.Text;

string Writer = textBox3.Text;

string Born = textBox4.Text;

string Count = textBox6.Text;

string Rent = textBox8.Text;

string RentNum = textBox7.Text;

string str_sql = "update Book set BookType='" + Type +

"',BookName='" + Name + "',BookWriter='" + Writer + "',BookBorn='" + Born + "',BookCount='" + Count + "',BookRent='" + Rent + "',BookRentNum='" + RentNum + "' where BookId ='" + ID + "' ";

SqlCommand cmd = new SqlCommand(str_sql, connection); //用于执行SQL 语句

cmd.ExecuteNonQuery();

MessageBox.Show("图书修改成功!");

//显示图书信息

string sql1 = "select

BookID,BookType,BookWriter,BookName,BookBorn,BookCount,BookRent,BookR entNum from Book";

SqlDataAdapter da1 = new SqlDataAdapter(sql1, connection); DataSet ds1 = new DataSet();

da1.Fill(ds1);

dataGridView1.DataSource = ds1.Tables[0];

connection.Close();

}

}

3.2 运行中遇到的问题

问题1:在运行过程中,发现界面上的数据显示不完整。

解决方法:想要显示数据库中的表的信息,就要在后台代码中正确的编写数据库相连的代码,并且,查询语句也要正确。经过参考之前的经验,发现在一开始数据库连接出现错误,查询语句编写也有问题,经过改正,就能正确的显示想要的数据。

问题2:主界面显示各个功能,跳转出现错误。

解决方法:在添加控件menustrip 后,后台编写代码时,在panel 属性中编写时,如;panel1.Controls.Clear();panel1.Controls.Add(us1);忽略了大小写问题,导致页面跳转出现错误。

问题3:在超期还书后时,该读者状态应为冻结,需要缴纳罚款后才能继续借书。但是出现没缴纳罚款也能借书。 解决方法:添加语句string str_sql1 = "select count(*) from Student where ID ='" + textBox1.Text + "'and authority = '可¨¦借¨¨' ";确保读者状态为可借才可以继续借书,否则弹出错误。

四 系统测试与结果

4.1系统测试的目的和意义

系统测试的目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,从而提出更加完善的方案。系统测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。

4.2 系统测试

4.2.1 读者身份 系统运行,进入登录界面

图4-1 登录界面

输入用户名和密码,并且选择身份后确认登录

图4-2 输入用户名和密码

当密码输入错误时,则提示

图4-3 出现错误提示

查阅图书信息

图4-4 图书信息预览

图4-5 借书功能界面

借书成功后右侧显示图书信息

图4-6 借书成功后界面

图4-7 还书界面

在规定日期内还书,则提示还书成功

图4-8 还书成功后界面

超期还书,则会提示借书权限冻结,要缴纳罚款

图4-9 超期还书提示

图4-10 缴费界面

缴纳罚款后,借书权限解冻,可以继续借书

图4-11 缴费成功后界面

查看借阅历史

图4-12 借阅历史界面

读者自己信息,可以修改密码

图4-13 读者信息界面

可以查看罚款历史

图4-14 罚款历史界面

学生想要查看所有人员信息,则会提示没有权限

图4-15 越权限界面

可以注销登录,并且在右边显示身份,当前日期

图4-16 主界面上方

4.2.2 管理员身份

管理员可以查询所有用户的信息

图4-17 所有读者信息界面

查询工作人员的所有信息

图4-18 所有工作人员信息界面

图书信息增加

图4-19 图书信息增加界面

图4-20 图书信息增加成功后界面

图书信息删除

图4-21 图书信息删除界面

图4-22 图书信息删除成功后界面

图书信息修改

图4-23 图书信息修改

图4-24 图书信息修改成功后界面

添加学生信息

图4-25 添加学生信息

添加工作人员信息

图4-26 添加工作人员信息

人员信息的删除

图4-27 学生信息删除

当身份选择与ID 编号不同时,则提示错误

图4-28 删除信息提示错误

图书借出排名

图4-29 图书借出排名

点击退出,则直接退出系统

图4-30 退出系统

4.3 系统测试结果分析

通过四组实际中的数据对本系统进行测试,证明本系统性能稳定,可靠性高,并通过反复测试,证明本系统有长期稳定性。根据测试,证明了本系统的功能、性能与项目需求分析相符,达到了设计要求,使功能实现与设计思想达到了一致。

五 课题收获与总结

5.1 课程设计心得

在本次课程设计中,使我更加扎实的掌握了有关数据库操作,与.net 编程方面的知识,从而设计出了小型企业人事信息管理系统。虽然在设计过程中遇到了许多问题,譬如在设计思想中使用三层架构的模式,但是最终通过思考和上网查阅相关资料使这些问题得到了解决,也暴露出了在前期上课学习过程中,有些知识掌握的并不牢固等问题,但是通过本次小学期的实践,使我对数据库与.net 的知识加深了理解,应用的也更熟练了一些。

通过本次课程设计,给了我很多专业知识以及专业技能上的提升,让我对抽象理论有了具体的认识。掌握了三层架构的设计思想,了解了.net 语言的编程方法,加深了对数据库操作方面的理解,并提高了我改善系统性能实现方面的能力,通过查询相关资料,也学会了很多编程过程中语句编写的问题和运行时错误的解决方法。

我认为,在本次小学期软件课程设计中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高,更重要的是,让我懂得了理论与实践相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正掌握,真正的有所提升。


相关内容

  • 领导力能力:有效管理VS英明领导
    作者:刘继铭 最近,不断被问到管理和领导的相关问题,颇有感触,以为对大家可能有用,下决心整理成博文,与大家分享. 记忆犹新,在20世纪80年代初,大学第二学期,在商学院图书馆读到当时台湾版的彼得?德鲁克的<有效的管理者>(这也是 ...
  • 当当网vs亚马逊
    当当网和亚马逊的商业模式 当当是通过对亚马逊的模仿才取得今天的巨大成功的,当当网最大限度的借鉴了亚马逊的商业模式和支撑业务发展的图书数目等后台要素,同时又结合中国国内的特有的消费.支付.政策法律.信息化.物流配送等实际情况进行创新.虽然当当 ...
  • 连云港市城市房屋拆迁评估技术规范
    第一章  总  则 第一条  为规范城市房屋拆迁评估技术行为,维护拆迁当事人的合法权益,保障房屋拆迁的顺利进行,根据<中华人民共和国城市房地产管理法>,国务院<城市房屋拆迁管理条例>(国务院第305号令),<江 ...
  • 知网论文检测查重报告样板20**年
    打印 文本复制检测报告单(全文标明引文) №:ADBD2015R_[***********]0527152407xxxxx 检测时2015-05-27 15:24:07 间: 检测文献: 红外防盗报警系统 作者: XX(xxxxxxxx) ...
  • 右半结肠癌根治切除术中寻找解剖平面的体会(附36 例报告)
    [文章编号]1007-9424(2008) 04-0281-03 临床经验交流 右半结肠癌根治切除术中寻找解剖平面的体会(附36例报告) U nderstanding of Ideatifying Anatomical Planes in ...
  • 看楚汉相争,以少胜多战役典例
    看楚汉相争,以少胜多战役典例 先秦时期: 『牧野之战』→周武王.姜尚[兵约10万]VS商纣王[士兵约17万,一说70万]:结果:商军大败,士卒倒戈,纣王自焚. 『柏举之战』→吴王阖闾.孙武.伍子胥[兵3万]VS楚令尹囊瓦.左司马沈尹戍[兵2 ...
  • 新员工职业生涯规划培训
    课程时间:1-2天 课程对象:各行业新入职员工 课程收益:  通过培训使学员理解职业生涯的概念:  通过培训是学员明白职业生涯规划的重要性:  通过培训使学员掌握如何做好职业发展的具体规划:  通过培训指导学员处理职业发展中的各种问 ...
  • 一站到底20**年0321
    一站到底 20130321 第1轮 许晋杭VS姬广亮 1. 2. 3. 4. 5. "神神气气神神气气不懂老师,辩驳最有力"是哪部张卫健主演的电视剧的著名台词? 机灵小不懂 6. 7. 我国民间习俗有"贴倒福& ...
  • 喜欢看书不是一件丢人的事
    都说是替女朋友来买书的,谁信?[配三张图] 2012年12月16日,湖南长沙图书城,人潮涌动. 黑压压的人群不止一次将路堵死,一位老奶奶也兴奋地挤在了队伍之中,在得知不是排队免费领鸡蛋之后,悻悻而归. 对的,这里没有鸡蛋,只有即将签售新书的 ...
  • 海贼王1到400集名称
    海贼王目录 简介:财富,权力,曾经拥有一切的海贼王戈尔多·罗杰,在临死前畱下暸一句话:"想要我的财富吗?那就去找吧,我的一切都在那裏,在那伟大的航道!"于是越来越多的人奔向大海,驶入伟大的航道,世界迎来暸大海贼时代! 很 ...