基于vb+VB.NET+SQL Server的网上图书预约系统设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于vb+VB.NET+SQL Server的网上图书预约系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。

文章目录:

  • 基于vb+VB.NET+SQL Server的网上图书预约系统设计与实现(毕业论文+程序源码)
    • 1、项目简介
    • 2、资源详情
    • 3、关键词:
    • 4、毕设简介
    • 5、资源下载

1、项目简介

  1. 《网上图书预约系统的设计》是以为读者提供便利为前提而开发的一个信息管理系统,它不仅要求建立数据的一致性和完整性,而且还需要应用程序功能的完备、易用等特点。系统主要采用VB.NET作为前端的应用开发工具,利用SQL Server数据库作为后台的数据库,利用WINDOWS 作为系统平台,采用VB.NET的ADO.NET数据访问规范来访问和操作数据库进行开发的供用户管理和操作图书的桌面数据库系统。它的主要功能是实现用户在网上进行图书的预约以及管理员对图书和用户的管理。系统的使用对象可以是高校或者其他单位的图书馆的读者和管理人员。
  2. 本论文主要讲述了VB.NET的基本概述及设计方法,紧接着以此系统为例,逐一介绍系统的设计开发,系统分为六个模块:用户身份验证模块、用户个人信息管理模块、图书查询预约模块、信息发布模块、图书管理模块、系统管理模块。在系统分析中先后用系统的功能结构图、数据库的E-R图、数据库表分析了系统所需的各种数据。在系统的设计中,详细的展现了系统的各个功能模块及核心代码。

2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:11106个字27页
包含内容:整套源码+完整毕业论文


3、关键词:

图书;预约;VB.NET;数据库


4、毕设简介

提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。

1 引言
1.1 课题背景及意义
省略

网上图书预约系统就是在此背景下,志在追求如何为读者提供更为便利的服务,能够在网上方便地对图书进行预约和查询并及时了解最新的图书信息,而且也使图书管理员更为方便有效地管理种类繁多的图书。本系统可以完成图书的预约、查询等功能以及图书信息的录入、修改、维护,另外还可以对用户进行分组并赋予权限,以满足安全性方面的要求。系统的组成模块主要有身份验证模块、用户个人信息模块、图书查询预约模块、信息发布模块、图书管理模块和系统管理模块。

1.2 本课题主要研究思路和方法
本系统的开发要求采用B/S结构,进行网上图书预约系统的设计与开发。因此,本设计首先分析该系统的相关功能,结合本设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识,选择所熟悉的开发工具进行本设计的开发;在设计中以需求分析为基础,写出系统开发计划、实现流程及相关问题的实现方法;最后,在系统开发完毕后,进行调试和运行,做好调试和运行的相关记录。

1.3 .NET概述
ASP.NET是微软流行的动态WEB编程技术活动服务器网页(ASP)的最新版本,但它远不是传统ASP简单升级。ASP.NET和ASP的最大区别在于编程思维的转换,ASP.NET是真正的面向对象(Object-oriented),而不仅仅在于功能的增强。它简化了在高度分布式Internet环境中的应用程序开发,使程序员可以在原有技术的基础上轻易地创建和布署具有安全性、高稳定性、高扩展性的Web应用程序。.NET提供了一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在Internet上分布。

.NET具有两个主要组件:公共语言运行库(CLR)和.NET框架基础类库。

公共语言运行库(CLR,Common Language Runtime)是.NET框架最基本的运行环境,它负责运行并维护用户所编写的任何代码。过去,我们使用高级语言(如VB、C等)所编写的程序往往需要将其编译成计算机所能理解的语言,然后再执行。对于不同的语言,在不同的机器上,常常会出现不兼容的问题,而需要对其进行重新编译才能使用。CLR为多种语言提供了一种统一的编程环境。采用CLR所支持的编程语言所编写的源代码在经过编译后,将生成一种叫MSIL(Microsoft Intermediate Language,微软中间语言)的语言,而不是编译成某种计算机所能理解的语言。在程序运行中,CLR将通过JIT编译器(Just In Time Compiler)来生成相应的机器代码,并对程序进行最后的、与机器相匹配的优化,以便程序可以在所在计算机上尽可能高效地运行。由于MSIL语言与机器无关,因此它可以在任何一个能够运行CLR的机器上运行,并且由于所有关于机器的优化都是由CLR执行的,所以也就不存在由于机器不同而产生的不兼容问题。

.NET框架基础类库是一个综合性的可重用类型集合,它为程序员提供了一个统一的真正面向对象的、层次化的、可扩展的编程接口。.NET框架类库是生成.NET应用程序、组件和控件的基础。

1.4 对数字图书馆的现状分析
省略

2 需求分析
2.1 需求调研
本系统为某高校或某单位所开发。立足于校园或单位的实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高图书信息的现代化发展,实现信息资源的共享。本系统的建成无疑会为广大读者和管理者提供极大的帮助。使用该系统之后,读者可以不用到图书馆,而直接通过互联网,在网上对图书进行查询、预约等操作,以及查看读者的预约情况和个人信息,读者可以通过网络方便全面的掌握图书的流通及预约情况。本系统的宗旨是图书的网络化管理,减少相关人员的工作量,使图书预约工作更加容易,提高工作的效率、降低管理的成本,使图书操作工作真正做到数字化和系统、高效的实施。

2.2 组织结构的分析
下图是图书预约的预约流程图:

图1 预约流程图
2.3 开发运行环境
开发此系统所需的基本软、硬件环境为:
① Windows
② SQL Server或更高版本
③ Pentium100及以上档次的IBM PC及其兼容机
④ 128M以上内存
⑤ 1G以上可用硬盘空间
⑥ VGA显示器
本系统在Windows 操作系统下,以Microsoft Visual Web Developer速成版为前台开发工具,用中文版SQL Server为后台数据库,其中主要通过ADO.NET技术来访问数据库。
总结:以某高校或某单位为分析对象,确定其组织结构和业务流程,最后确定网上图书预约系统应该具备的功能,以确定系统的主要模块,并简单介绍了该系统的开发环境和运行条件。

3 系统分析设计
3.1 功能设计
通过对用户需求调研及分析,确定系统应具备的功能,包括:安全管理,用户个人信息管理,图书查询及预约,信息发布,图书信息管理,用户信息管理,用户角色权限管理。其具体功能设计如下:
1、安全管理
提供用户登录、注销以及修改密码等功能。
2、用户个人信息管理
每个用户可以对自己的信息进行查看以及修改密码等操作,还可以查看和删除自己的预约信息。
3、图书查询及预约
根据一定的条件对图书进行查询,并可以查看图书的详细信息。用户登录后可以对查询到的图书进行预约操作。
4、信息发布
用户可以查看当前最新图书信息以及当前预约信息和历史预约信息。
5、图书信息管理
图书管理员可以对图书进行添加、更新及删除操作。在图书管理员录入图书信息时,需要输入图书名称、图书作者、出版社及价格等信息,同时还需要选择图书状态。对于已存在的图书信息同样可以对其进行修改和删除操作。
6、用户信息管理
系统管理员可以添加新用户,并对用户的信息进行修改更新操作。在用户编辑修改页面,可以更改用户类别和用户状态等,但不可以对用户的ID进行修改。
7、系统角色权限管理
系统管理员可以添加、修改和删除某一角色。对应于某一种角色,有类别名称、是否允许预约、是否允许管理图书信息、是否允许管理系统等参数。

3.2 系统功能结构图

图2 系统功能结构图
3.3 模块设计
系统分为6个模块,每个模块负责的功能相对专一。其中,用户登录与验证提供对用户身份的验证,同时读取用户所具有的权限,只有具有系统账号的用户才可以使用系统的所有功能。系统的最底层是数据库,本系统采用SQL Server2000数据库。采用ADO.NET提供对ASP.NET的支持和对数据库的访问操作。系统的模块划分图如下:

图3 模块划分图
1、用户身份验证模块
用户身份验证模块实现用户合法性检查,把用户ID保存到Session中,而在后面的页面中通过判断这个Session值是否为空来判断用户是否登录。在这个模块中提供注销和修改密码的功能。
2、用户个人信息管理模块
在用户个人信息管理模块里主要包括了查看用户个人信息和预约信息等功能,同时还可以在预约信息列表中查看当前预约图书的状态及到书情况,并可以取消预约的图书。
3、图书查询预约模块
图书查询预约模块提供用户查询和预约图书。查询可以分为简单查询、普通查询和高级查询等3种。用户查询到书后,可以点击预约按钮对相应的图书进行预约。
4、信息发布模块
信息发布模块主要提供的是查看最近上架的图书信息、当前预约图书信息和历史预约图书信息等功能,以方便用户查看,并起到提示作用。这个信息是面向所有的用户,并不需要登录。
5、图书管理模块
图书管理模块主要提供对图书信息的管理,包括了图书的添加、更新和删除操作。
6、系统管理模块
系统管理模块包括用户信息管理和角色权限管理两个功能。用户信息管理主要包括了用户信息的添加与删除、查询等功能。而角色权限管理主要包括了角色权限的添加、修改与删除功能。在设计的时候,将不同的功能模块当作一种权限分配给某角色组,一种角色组里面可以有不同的用户,对于某一用户,他具有其角色的权限。

3.4 数据库的设计
在本系统中,存在用户、图书和角色3种对象实体。
用户实体E-R图如下图所示:

图4 用户实体E-R图

图书实体E-R图如下图所示:

图5 图书实体E-R图

角色实体E-R图如下图所示:

图6 角色实体E-R图

各实体间的关系图:

图7 实体间关系图
根据前面的功能模块设计,系统所需要的数据库应包括“用户信息”,“图书信息”,“预约信息”,“借阅信息”,“角色权限”,各部分各自作为一个表存在。


总结:对整个网上图书预约系统的功能模块的详细设计和所运用的后台数据库表的详细介绍。

4 系统详细设计
4.1 系统公共类的设计
在一个系统中,很多方法、数据都是可以共享的,为了尽量减少重复劳动,可以通过建立一些公共的类的方法,提供统一的数据读写方法。在需要使用这些方法操作时,仅需要构建这些类的对象,调用类的方法,完成相应的功能操作。

4.1.1 数据操作类的设计
数据操作类DBController.vb实现对数据访问的方法,包括执行无返回值的SQL语句、执行数据查询以及一些用户控件的数据绑定,通过对这些操作方法的封装,方便开发。需要调用时,通过传递参数,选择不同的方法,进行不同的操作。
在该类中,Open、Close打开关闭数据库的连接;Fill填充ds;ExecNonSql执行无返回值的数据库操作;ExecReaderSql执行查询操作;BindDBGrd对DataGrid进行数据绑定;BindListBox对ListBox中进行绑定;BindDrpDownList对DropDownList进行数据绑定;CheckUserberInfo判断用户用户名、密码是否正确;GetRowsNum获取SQL查询记录条数。

4.1.2 图书操作类的设计
图书操作类BookController.vb是基于DBController类的,里面封装了对图书进行预约等操作以及获取指定用户的借书权限、借书数量、待借天数的方法函数。在该类中,GetMax获取用户最大的借书量;GetBookDate获取该用户允许借阅时间;GetBookState判断当前书的状态;IsUserBooking判断用户是否预约该图书;GetCurNum获取用户当前借书数量;LendBook进行借书操作;CancelBooking取消预约书信息;ReturnBook进行还书操作;BookingBook预约图书信息;AllowBooking判断是否允许预约;IsBookManager判断是否为图书管理员;IsSysManager判断是否为系统管理员。
判断用户是否预约该图书的函数如下:

Public Function IsUserBooking (ByVal UserID As String, ByVal BookID As String) As BooleanDim sqlstr As String = "select * from BookingInfo where UserID='" + UserID + "' and BookID=" + BookIDIf obj.GetRowsNum (sqlstr) = 0 ThenReturn FalseElseReturn TrueEnd If
End Function

是否允许用户预约的函数如下:

Public Function AllowBooking (ByVal UserID As String) As BooleanDim sqlstr As String = "select * from UserInfo, RoleInfo where UserInfo.RoleID=RoleInfo.RoleID and AllowBooking=1 and UserID='" + UserID + "'"If obj.GetRowsNum (sqlstr) = 0 ThenReturn FalseElseReturn TrueEnd IfEnd Function

4.2 用户身份验证模块的设计
4.2.1 功能描述
通常一个模块里面有几个功能,而功能的导航可以通过用户控件来控制,将用户控件加载到页面中。用户身份验证模块和用户个人信息管理模块共用一个功能导航控件UserToolBar.ascx。用户身份验证模块实现用户合法性检查,其中在这个模块中还提供注销和修改密码的功能。注销页面LoginOut.aspx只需要将Session赋为空即可,修改密码页面为ChangePWD.aspx。

4.2.2 登录页面Login.aspx的设计
在该页面中,LoginBtn_Click()函数处理“登录”按钮的单击事件,通过调用DBController类的CheckUserberInfo方法,依据该方法的返回值判断用户登录是否成功,如果登录成功则把用户ID保存到Session中,然后跳转页面到ViewUserInfo.aspx;否则弹出登录失败提示,并重新返回到登录页面。在后面的页面中通过判断这个Session值是否为空来判断用户是否登录。其主要后台处理代码如下:

Private Sub LoginBtn_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LoginBtn.ClickDim obj As DBController = New DBControllerIf obj.CheckUserberInfo (txtUserID.Text, txtPass.Text) = 1 ThenSession ("UserID") = txtUserID.Text.ToStringResponse.Redirect ("ViewUserInfo.aspx")ElsePage.ClientScript.RegisterStartupScript(Page.GetType(), "alter", "<script>alert('登陆失败!');window.history.go(-1);</script>")End If
End Sub

4.2.3 注销页面LoginOut.aspx的设计
在处理页面的Page_Load()函数中将Session赋为空,并将页面重定向到Login.aspx。

4.2.4 修改密码页面ChangePWD.aspx的设计
首先判断用户输入的旧密码是否正确,如果不正确,则弹出提示信息。修改密码时更新SQL语句,通过DBController中的ExecNonSql方法实现。

4.3 用户个人信息模块
4.3.1 功能描述
在用户个人信息管理模块里主要包括了用户信息页面和个人预约信息页面。用户信息页面包括用户的用户名、姓名、性别、E-Mail、单位、电话、当前状态、是否为图书管理员或系统管理员等信息;个人预约信息页面做成加载控件的形式,通过传递参数在ListContent.aspx页面动态加载控件。

4.3.2 个人预约信息控件BookingList.ascx的设计
个人预约信息控件中,Page_Load()函数在首次加载页面时绑定DataGrid,通过加载控件后显示图书的相关信息及预约时间、到书时间、是否到书的通知、预约状态等信息,并且根据参数不同进行相应的删除预约信息等操作。其主要后台处理代码如下:

Private Sub Page_Load (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadIf Not IsPostBack ThenBindDBGrid ()End If
End Sub
Private Sub BindDBGrid ()
Dim sqlstr As String = String.Empty
sqlstr += "select b.BookID, b.BookName, b.BookAuthor,"
sqlstr += " b.ISBN, b.SearchNO, a.BookingDate, returnDate = case b.isBorrow"
sqlstr += " when 0 then b.UploadDate"
sqlstr += " when 1 then dbo.f_GetReturnDate (a.BookID) end ,"
sqlstr += " stateMsg = case a.State when 1 then '有效' when 2 then '已过期' end,"
sqlstr += " isReturned = dbo.f_GetIsReturned (a.BookID, getDate ())"
sqlstr += " from BookingInfo a inner join BookInfo b"
sqlstr += " on a.BookID = b.BookID where a.State <> 0 and a.UserID = '" + Session ("UserID").ToString () + "'"
Dim obj As DBController = New DBController
obj.BindDBGrd (sqlstr, BookingGrid)
End Sub

4.3.3 个人预约信息的主界面图

图8 个人预约信息界面
4.4 图书查询预约模块的设计
4.4.1 功能描述
图书查询模块主要包含了简单查询页面(SimpleSearch.aspx)、普通查询页面(NormalSearch.aspx)和高级查询页面(AdvSearch.aspx)。特别要注意的是,用户预约成功的书在登录后不能查询出来。

4.4.2 预约流程图

图9 预约流程图

4.4.3 简单查询页面SimpleSearch.aspx的设计
在Page_Load()函数中,首先判断用户是否允许预约,如果不允许预约操作,则隐藏预约按钮。
MisBtn_Click()函数处理“模糊查询”按钮的单击事件,获取查询条件,组成查询的SQL语句,然后进行数据绑定,其主要处理代码如下:

Private Sub MisBtn_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MisBtn.ClickQuerySql ()If txtContent.Text.ToString.Trim <> "" ThenDim str As String = txtContent.Text.ToString.Trimsqlstr += " where a.BookAuthor like '%" + str + "%' or a.Subject like '%" + str + "%' or a.BookName like '%" + str + "%'"End IfSession ("sqlstr") = sqlstrBindGrid ()
End Sub

BookingBtn_Click()函数处理“预约”按钮单击事件,其处理函数首先获取所有被选中的图书ID,然后组成SQL语句插入到预约信息表中。如果用户预约成功后,则弹出“预约成功”的提示框。其主要处理代码如下:

Private Sub BookingBtn_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BookingBtn.Click
Dim i As Integer
Dim userID As String = Session ("UserID")
Dim str As String = ""
Dim myCheckBox As CheckBox
For i = 0 To ResultGrid.Items.Count - 1
myCheckBox = CType (ResultGrid.Items (i).FindControl ("ChckBox"), CheckBox)
If myCheckBox.Checked = True Thenstr += "if(not exists(select 1 from BookingInfo where bookid=" + ResultGrid.Items(i).Cells(6).Text + " and userid='" + userID + "')) insert into BookingInfo (UserID,BookID,BookingDate,BookingState) values('" + userID + "'," + ResultGrid.Items(i).Cells(6).Text + ",getdate(),0)"
End If
Next
Dim obj As DBController = New DBController
obj.ExecNonSql (str)
Response.Write("<script>javascript:alert('预约成功!!!');</script>")
End Sub

4.4.4 普通查询页面和高级查询页面的设计
这两个页面与简单查询页面的设计只是其查询的条件有所不同。

4.4.5 简单查询页面的主界面图

图10 简单查询界面
4.5 信息发布模块的设计
4.5.1 功能描述
信息发布模块包括查看最近上架的图书信息页面(NewBook.aspx)、当前预约信息控件(BookingIn.ascx)和历史预约信息控件(HisBooking.ascx)通过MsgContainer.aspx页面加载。

4.5.2 新书查询页面NewBook.aspx的设计
在该页面中,只需添加一个下拉框,让用户在下拉框中选择时间,提供查询按钮,在Datagram中显示出来,对DataGrid进行数据绑定函数以提供调用,在此DataGrid中实现分页、排序、查看图书信息等功能。SearchBtn_Click()函数处理“查询”按钮单击事件,获取查询条件,其中需要对时间进行特别的处理。

4.5.4 控件加载页面MsgContainer.aspx的设计
控件加载页面中通过table的单元格来控制控件的加载,在中加runat=“server”,并为其添加ID。在Page_Load()函数中通过识别type传递参数来加载不同控件,1表示加载当前预约信息控件,2表示加载历史预约信息控件。
当前预约信息控件(BookingIn.ascx)主要用来显示用户的有效预约信息。通过对DataGrid进行数据绑定,显示有效预约状态的用户的用户名、姓名及单位,有效预约的图书的书名、著者、预约时间及到书时间和当前预约状态。其主要处理代码如下:

Private Sub Page_Load (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadIf Not IsPostBack ThenDim sqlstr As String = String.Emptysqlstr += "update BookingInfo set State = 2 where State = 1 and dateadd (day, 2, dbo.f_GetBookingDate (BookID, BookingDate)) < getDate ()”sqlstr += "select a.UserID, a.UserName, a.Unit, b.BookingDate,"sqlstr += "c.BookName, c.BookAuthor, returnDate = case c.isBorrow "sqlstr += "when 0 then c.UploadDate "sqlstr += "when 1 then dbo.f_GetReturnDate (c.BookID) end,"
sqlstr += "State = case b.State when 0 then '失效' when 1 then '有效' when 2 then '已过期' end "sqlstr += "from UserInfo a inner join BookingInfo b on a.UserID=b.UserID inner join BookInfo c "sqlstr += "on b.BookID = c.BookID where b.State <> 0 order by b.State desc "Dim obj As DBController = New DBControllerobj.BindDBGrd (sqlstr, BookingGrid)End If
End Sub

历史预约信息控件(HisBooking.ascx)主要用来显示用户的失效和过期预约信息。通过对DataGrid进行数据绑定,显示失效和过期预约状态的用户的用户名、姓名及单位、历史预约的图书的书名、著者及预约时间和当前预约状态。用户在规定时间内去借阅已经预约成功的图书后,其预约状态将修改为“失效”;反之,如果用户没有在规定时间内去借阅已经预约成功的图书,则他的预约状态将修改为“过期”。

4.5.5 当前预约信息的主界面图

图11 当前预约信息界面

4.5.6 历史预约信息的主界面图

图12 历史预约信息界面
4.6 图书管理模块的设计
4.6.1 功能描述
图书管理模块主要实现对图书信息的管理,包括了图书添加页面(AddBook.aspx)和图书编辑页面(EditBook.aspx)。 添加图书页面主要是在AddBtn_Click()函数处理用户单击“添加”按钮事件,将用户输入的图书信息组成SQL语句,然后插入数据库中;图书编辑页面将该页面左侧的ListBox控件跟数据库进行绑定,用以显示所有图书列表,当用户单击某一图书后,自动将图书信息填充到右边的图书信息明细中,用户可对其进行更新和删除操作。在该模块中,图书管理员还能够根据用户名和图书条码号对图书进行借、还操作,对于某用户预约成功的图书进行借阅后,该用户的预约状态将修改为“失效”。

4.6.2 图书编辑页面的主界面图

图13 图书编辑界面
4.7 系统管理模块的设计
4.7.1 功能描述
系统管理模块包括用户信息管理和角色权限管理两个功能。用户信息管理包括添加用户页面(AddUser.aspx)、编辑用户页面(EditUser.aspx)和用户列表(UserList.aspx),实现对用户的添加、更新、删除及查询操作;角色权限管理则通过使用DataGrid对数据进行修改更新以及删除等操作,AddBtn_Click()函数处理“添加”按钮单击事件,实现添加用户类别信息,将复选框中的信息转换为对应数据库需要的信息,其主要处理代码如下:

Private Sub AddBtn_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AddBtn.ClickDim sqlstr As String = "insert into RoleInfo (RoleStyle, BookNum, BookDate, AllowBooking, IsBookManager, IsSysManager) values (“sqlstr += "'" + txtRoleStyle.Text.ToString.Trim + "',"sqlstr += txtBookNum.Text.ToString.Trim + ","sqlstr += txtBookDate.Text.ToString.Trim + ","If ChAllowBooking.Checked = True Thensqlstr += "1,"Elsesqlstr += "0,"End IfIf ChIsBookManager.Checked = True Thensqlstr += "1,"Elsesqlstr += "0,"End IfIf ChIsSysManager.Checked = True Thensqlstr += "1)"Elsesqlstr += "0)"End IfDim obj As DBController = New DBControllerobj.ExecNonSql (sqlstr)Response.Write("<script>javascript:alert('添加成功!!!');</script>")txtRoleStyle.Text = ""txtBookNum.Text = ""txtBookDate.Text = ""ChIsBookManager.Checked = FalseChIsSysManager.Checked = FalseBindDBGrid ()
End Sub

此外,在角色权限管理中,StyleDGrd_CancelCommand()函数处理在DataGrid中“取消”按钮单击事件,StyleDGrd_EditCommand()函数处理在DataGrid中“编辑”按钮单击事件,StyleDGrd_UpdateCommand()函数处理在DataGrid中“更新”按钮单击事件,StyleDGrd_PageIndexChanged()函数处理分页事件,StyleDGrd_DeleteCommand()函数处理在DataGrid中“删除”按钮单击事件。

4.7.2 角色权限管理页面的主界面图

图14 角色权限管理界面
总结:针对具体每个模块的功能进行详细的介绍。
5 系统测试
5.1 测试环境
本系统测试环境:CPU PⅢ,内存128M及以上,SQL SERVER 测试通过。建议用户CPU PⅣ,内存256M及以上,

5.2 测试结果
在系统的各个模块设计完成之后,需要对整个系统进行全面的测试。目的是让整个系统能够快速、稳定、安全的运行。在进行系统测试过程中会出现如下几种情况:
(1)对页面提交过来的数据进行空指针异常捕捉。凡是遇到无效或是空值数据都需要用程序进行操作处理。
(2)及时捕捉数据库连接的打开和关闭异常。
(3)对数据库查询操作异常进行捕捉。
(4)对数据库插入操作异常进行捕捉。
(5)对数据库更新操作异常进行捕捉。
(6)对数据库删除操作异常进行捕捉。
(7)权限控制,通过Session会话变量对管理员和用户的权限进行控制。
(8)对字符串的格式进行转换。

结 论
在历经三个多月的需求分析、结构设计,到详细编码和系统测试,最终完成了整个网上图书预约系统的设计。系统运行正常,实现了图书的查询预约,信息发布,图书及用户的管理,角色权限的管理等功能。本文简要介绍了典型B/S网上图书预约系统的主要体系结构及功能模块,重点讨论了系统开发工具、开发语言等关键技术以及系统的数据库建设和功能模块的代码分析。
省略

参考文献
[1] 方睿,刁仁宏.网络数据库原理及应用[M].成都:四川大学出版社,2005。
[2] Rebecca M.Riordan.ADO.NET程序设计[M].北京:清华大学出版社,2002。
[3] G.Andrew Duthie.ASP.NET程序设计[M].北京:清华大学出版社,2002。
[4] Stephen Walthe.ASP.NET揭秘(第二版)[M].北京:中国电力出版社,2004。
[5] Richard Anderson.ASP.NET 1.0高级编程[M].北京:清华大学出版社,2002。
[6] 江广顺,余松.ASP.NET 2.0+SQL SERVER热门网络应用开发详解[M].北京:人民邮电出版社,2007。
[7] 龚赤兵.ASP.NET 2.0网站开发实例教程[M].北京:人民邮电出版社,2006。

致 谢
省略


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号 毕业设计全套资源(点击下载)
本项目源码 基于vb+VB.NET+SQL Server的网上图书预约系统设计与实现(源码+文档)_vb_BS架构_网上图书预约系统.zip

asp毕业设计——基于vb+VB.NET+SQL Server的网上图书预约系统设计与实现(毕业论文+程序源码)——图书预约系统相关推荐

  1. java毕业设计——基于java+J2EE+Hibernate的校园二手交易网站设计与实现(毕业论文+程序源码)——二手交易网站

    基于java+J2EE+Hibernate的校园二手交易网站设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+J2EE+Hibernate的校园二手交易网站设计与实现,文章末尾附有 ...

  2. Node.js毕业设计——基于Node.js+JavaScript+MongoDB的供求信息网站设计与实现(毕业论文+程序源码)——供求信息网站

    基于Node.js+JavaScript+MongoDB的供求信息网站设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于Node.js+JavaScript+MongoDB的供求信息网站设计 ...

  3. android毕业设计——基于Android+XAMPP+MySQL的家校互动平台设计与实现(毕业论文+程序源码)——家校互动平台

    基于Android+XAMPP+MySQL的家校互动平台设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于Android+XAMPP+MySQL的家校互动平台设计与实现,文章末尾附有本毕业设 ...

  4. asp毕业设计—— 基于asp+access的网上花店设计与实现(毕业论文+程序源码)——网上花店

    基于asp+access的网上花店设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+access的网上花店设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需要下载开题报告P ...

  5. 【php毕业设计】基于php+mysql+apache的二手物品交易网站设计与实现(毕业论文+程序源码)——二手物品交易网站

    基于php+mysql+apache的二手物品交易网站设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于php+mysql+apache的二手物品交易网站设计与实现,文章末尾附有本毕业设计的 ...

  6. 【java毕业设计】基于javaEE+原生Servlet+MySql的村镇旅游网站设计与实现(毕业论文+程序源码)——村镇旅游网站

    基于javaEE+原生Servlet+MySql的村镇旅游网站设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于javaEE+原生Servlet+MySql的村镇旅游网站设计与实现,文章末尾 ...

  7. 【java毕业设计】基于javaEE+SSH+MySql+MVC的动漫论坛设计与实现(毕业论文+程序源码)——动漫论坛

    基于javaEE+SSH+MySql+MVC的动漫论坛设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于javaEE+SSH+MySql+MVC的动漫论坛设计与实现,文章末尾附有本毕业设计的 ...

  8. asp毕业设计——基于vb+VB.NET+SQL Server的web订餐系统设计与实现(毕业论文+程序源码)——订餐系统

    基于vb+VB.NET+SQL Server的web订餐系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于vb+VB.NET+SQL Server的web订餐系统设计与实现,文章末尾附有 ...

  9. C#毕业设计——基于C#+asp.net+sqlserver的证券术语解释及翻译系统设计与实现(毕业论文+程序源码)——翻译系统

    基于C#+asp.net+sqlserver的证券术语解释及翻译系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于C#+asp.net+sqlserver的证券术语解释及翻译系统设计与实 ...

  10. C#毕业设计——基于C#+asp.net+Access的视频点播系统设计与实现(毕业论文+程序源码)——视频点播系统

    基于C#+asp.net+Access的视频点播系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于C#+asp.net+Access的视频点播系统设计与实现,文章末尾附有本毕业设计的论文 ...

最新文章

  1. 【笔记】web语音相关
  2. ifstream java_C ifstream将读取一些值然后停止
  3. SAP HANA 三大特点
  4. 【IPFS + 区块链 系列】 入门篇 - IPFS环境配置
  5. 品牌到底要不要做全渠道?且听他们怎么说……
  6. GDCM:目录条目的测试程序
  7. java代下订单管理模块_用java语言开发一个订单管理系统
  8. 190910-ajax-请求小结
  9. iPhone开发--NSDate操作(转)
  10. 2019美赛B题完整论文
  11. python opencv车辆测速视频汽车速度检测入侵检测测速
  12. 如何用excel做正交分析_最简单的正交试验教程,一次搞懂它!
  13. Django 搭建知乎热榜 API
  14. c语言中元音字母对应的的值,c语言输入一个字符串,统计这个字符串的元音字母...
  15. Mysql持久性的实现
  16. 利用java编写网络聊天程序并加密信息
  17. SpringCloud与微服务Ⅷ --- Hystrix断路器
  18. unity摄像机环绕物体旋转
  19. python3.6.国家政策文本分析代码
  20. Spring高手之路——深入理解与实现IOC依赖查找与依赖注入

热门文章

  1. System.getenv(name)获取不到环境变量在Idea中
  2. java pdf 预览_pdf.js实现图片在线预览
  3. 1月26日全国铁路预计发送旅客1061万人次
  4. 3维IC的三种实现方法【读论文】
  5. 1、Node.js 我的开始 安装
  6. IPP 的FFT测试
  7. Serv-u控制台加密
  8. 邱郁惠-StarUML建模-UMLChina讲座-音频和幻灯
  9. 李沐论文精读: ResNet 《Deep Residual Learning for Image Recognition》 by Kaiming He
  10. 学习分享——基于深度学习的NILM负荷分解(四)深度学习实现,代码讲解