《(精品)第12章 基于CS结构的数据库开发技术.ppt》由会员分享,可在线阅读,更多相关《(精品)第12章 基于CS结构的数据库开发技术.ppt(105页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、SQL Server 2005数据库管理与开发教程第第12章章 基于基于C/S结构的数据库开发技术结构的数据库开发技术 本章主要介绍基于本章主要介绍基于C/S结构的数据库开结构的数据库开发技术,内容包括发技术,内容包括C/S结构与结构与B/S结构概述,结构概述,VB基于基于C/S架构的数据库开发技术,使用架构的数据库开发技术,使用ADO控件操纵控件操纵SQL Server 2005,使用,使用ADO对象操纵对象操纵SQL Server 2005,最后通,最后通过一个完整的学生信息系统,使读者全面过一个完整的学生信息系统,使读者全面了解基于了解基于C/S结构的数据库开发技术,并应结构的数据库开发
2、技术,并应用到实际工作中。用到实际工作中。12.112.1C/SC/S结构与结构与B/SB/S结构结构12.212.2VBVB基于基于C/SC/S架构的数据库开发技术架构的数据库开发技术12.312.3使用使用ADOADO控件操纵控件操纵SQL Server2005SQL Server200512.412.4使用使用ADOADO对象操作对象操作SQL Server 2005SQL Server 200512.512.5开发一个学生信息系统开发一个学生信息系统12.1 C/S结构与结构与B/S结构结构 12.1.1 12.1.1 认识认识C/SC/S结构结构图图12.1 三层三层/结构图结构图
3、C/S结构的优点如下:结构的优点如下:(1)能充分发挥客户端计算机的处理能)能充分发挥客户端计算机的处理能力,很多工作可以在客户端处理后再提交力,很多工作可以在客户端处理后再提交给服务器。给服务器。对应的优点就是客户端响应速度快。对应的优点就是客户端响应速度快。(2)应用服务器运行数据负荷较轻,数)应用服务器运行数据负荷较轻,数据安全性较高。据安全性较高。其缺点主要有以下几点:其缺点主要有以下几点:(1)维护成本高。)维护成本高。(2)系统扩展性差。)系统扩展性差。(3)客户端需要安装专用的客户端软件)客户端需要安装专用的客户端软件。12.1.2 12.1.2 认识认识B/SB/S结构结构图图
4、12.2 B/S结构结构 12.1.3 C/S12.1.3 C/S结构与结构与B/SB/S结构的区别结构的区别 Client/Server(C/S)结构是建立在)结构是建立在局域网的基础上的,局域网的基础上的,Browser/Server(B/S)结构是建立在广)结构是建立在广域网的基础上的。域网的基础上的。两种结构存在下列区别。两种结构存在下列区别。(1)硬件环境不同。)硬件环境不同。(2)对安全要求不同。)对安全要求不同。(3)程序架构不同。)程序架构不同。(4)软件重用度下同。)软件重用度下同。(5)系统维护不同。)系统维护不同。(6)处理问题不同。)处理问题不同。(7)用户接口不同。)
5、用户接口不同。(8)信息流不同。)信息流不同。12.2 VB基于基于C/S架构的数据库开发技术架构的数据库开发技术 12.2.1 12.2.1 了解了解ODBCODBC ODBC(Open DataBase Connectivity,开放数据库互连)是,开放数据库互连)是Microsoft公司提供的有关数据库的一个组公司提供的有关数据库的一个组成部分,它建立一组规范并提供了数据库成部分,它建立一组规范并提供了数据库访问的标准访问的标准API(应用程序编程接口)。(应用程序编程接口)。一个使用一个使用ODBC操作数据库的应用程操作数据库的应用程序,基本操作都是由序,基本操作都是由ODBC驱动程序
6、完成,驱动程序完成,不依赖于不依赖于DBMS。应用程序访问数据库时,首先要用应用程序访问数据库时,首先要用ODBC管理器注册一个数据源,这个数据源管理器注册一个数据源,这个数据源包括数据库位置、数据库类型和包括数据库位置、数据库类型和ODBC驱动驱动程序等信息,管理器根据这些信息建立程序等信息,管理器根据这些信息建立ODBC与数据库的连接。与数据库的连接。12.2.2 12.2.2 配置配置ODBCODBC数据源数据源 图图12.3 打开打开“ODBC 数据源管理器数据源管理器”图图12.4 创建数据源创建数据源 图图12.5 数据源信息设置数据源信息设置 图图12.6 选择数据库验证方式选择
7、数据库验证方式图图12.7 选择数据库选择数据库 12.2.3 12.2.3 了解了解OLE DBOLE DB OLE DB(OLEDB)是微软通向不同)是微软通向不同数据源的低级应用程序接口。数据源的低级应用程序接口。OLE DB不仅包括微软资助的标准数不仅包括微软资助的标准数据接口开放数据库连通性(据接口开放数据库连通性(ODBC)的结构)的结构化查询语言(化查询语言(SQL)能力,还具有面向其)能力,还具有面向其他非他非SQL数据类型的通路。数据类型的通路。作为微软的组件对象模型(作为微软的组件对象模型(COM)的)的一种设计,一种设计,OLE DB是一组读写数据的方法。是一组读写数据的
8、方法。OLD DB中的对象主要包括数据源对中的对象主要包括数据源对象、阶段对象、命令对象和行组对象。象、阶段对象、命令对象和行组对象。使用使用OLE DB的应用程序会用到如下的应用程序会用到如下的请求序列:初始化的请求序列:初始化OLE并连接到数据源、并连接到数据源、发出命令、处理结果、释放数据源对象并发出命令、处理结果、释放数据源对象并停止初始化停止初始化OLE。12.2.4 ADO12.2.4 ADO开发技术开发技术 ADO(ActiveX Data Object,ActiveX数据对象)是一个基于数据对象)是一个基于OLE DB之之上的对象模型,包含了所有可以被上的对象模型,包含了所有可
9、以被OLE DB标准接口描述的数据类型,通过标准接口描述的数据类型,通过ADO内部内部的属性和方法提供统一的数据访问接口。的属性和方法提供统一的数据访问接口。ADO对象模型具有可扩展性,当把数对象模型具有可扩展性,当把数据库上层应用程序移植到不同的数据库平据库上层应用程序移植到不同的数据库平台上时,只需要更换连接数据库的驱动程台上时,只需要更换连接数据库的驱动程序,而不需要对上层程序作任何修改。序,而不需要对上层程序作任何修改。ADO组件是组件是Microsoft数据访问组件数据访问组件(MDAC)的一部分,可以直接从微软公)的一部分,可以直接从微软公司的官方网站下载更新,常见的版本是司的官方
10、网站下载更新,常见的版本是MDAC2.5和和MDAC2.7。最新的最新的ADO.NET版本包含在版本包含在MDAC2.7组件里,随着组件里,随着.NET开发工具一起开发工具一起发布,包含了对新一代的发布,包含了对新一代的XML网络技术的网络技术的全面支持,关于全面支持,关于ADO.NET的相关内容将在的相关内容将在第第13章中介绍。章中介绍。ADO提供了执行以下操作的方式:提供了执行以下操作的方式:(1)连接到数据源,同时可确定对数据)连接到数据源,同时可确定对数据源的所有更改是否已成功或没有发生。源的所有更改是否已成功或没有发生。(2)指定访问数据源的命令,同时可带)指定访问数据源的命令,同
11、时可带变量参数,或优化执行。变量参数,或优化执行。通常涉及通常涉及ADO的的Command对象。对象。(3)执行命令,例如一个)执行命令,例如一个Select语句。语句。(4)如果这个命令使数据按表中的行的)如果这个命令使数据按表中的行的形式返回,则将这些行存储在易于检查、形式返回,则将这些行存储在易于检查、操作或更改的缓存中。操作或更改的缓存中。(5)适当情况下,可使用缓存行的更改)适当情况下,可使用缓存行的更改内容来更新数据源。内容来更新数据源。(6)提供常规方法检测错误(通常由建)提供常规方法检测错误(通常由建立连接或执行命令造成),涉及立连接或执行命令造成),涉及ADO的的Error对
12、象。对象。图图12.8 ADO对象模型对象模型12.3 使用使用ADO控件操纵控件操纵SQL Server 2005 ADO Data控件(如图控件(如图12.9所示)是通所示)是通过过Microsoft ActiveX数据对象(数据对象(ADO)来)来快速建立数据源连接的数据绑定控件,应快速建立数据源连接的数据绑定控件,应用程序通过用程序通过ADO控件与数据提供者连接,控件与数据提供者连接,数据提供者可以是任何符合数据提供者可以是任何符合OLE DB规范的规范的数据源。数据源。图图12.9 ADO Data控件控件 ADO Data控件通过属性实现了对数据控件通过属性实现了对数据源的连接。源
13、的连接。创建连接时,可以采用下列连接方式创建连接时,可以采用下列连接方式之一:一个字符串,一个之一:一个字符串,一个OLE DB文件或一文件或一个个ODBC数据源名称(数据源名称(DSN)。)。当使用当使用DSN时,无须更改控件的任何时,无须更改控件的任何其他属性。其他属性。使用使用ADO Data控件可以达到以下目的:控件可以达到以下目的:(1)连接一个本地数据库或远程数据库。)连接一个本地数据库或远程数据库。(2)打开一个指定的数据库表,或定义)打开一个指定的数据库表,或定义一个基于一个基于SQL的查询、存储过程、或该数的查询、存储过程、或该数据库中表视图的记录集合。据库中表视图的记录集合
14、。(3)将数据字段的数值传递给数据绑定)将数据字段的数值传递给数据绑定控件,并在这些控件中显示或更改这些数控件,并在这些控件中显示或更改这些数据字段的数值。据字段的数值。(4)添加新的记录,或根据显示在数据)添加新的记录,或根据显示在数据绑定控件中的数据的任何更改来更新一个绑定控件中的数据的任何更改来更新一个数据库。数据库。12.3.1 12.3.1 添加添加ADOADO控件控件图图12.10 在在main_jcsz_rylb窗体上添加窗体上添加ADO控件控件 12.3.2 12.3.2 访问访问SQL Server 2005SQL Server 2005数据库数据库 1 1通过通过Conne
15、ctionStringConnectionString属性连接数属性连接数据库据库 图图12.11 “属性页属性页”对话框对话框 图图12.12 设置设置“连接连接”选项卡界面选项卡界面 2 2通过通过RecordSourceRecordSource属性连接数据表属性连接数据表 RecordSource属性确定具体可访问属性确定具体可访问的数据,这些数据构成记录集对象的数据,这些数据构成记录集对象Recordset。该属性值可以是数据库中的单个表,该属性值可以是数据库中的单个表,也可以是也可以是SQL查询语句。查询语句。语法:语法:object.RecordSource=value 图图12.
16、13 记录源记录源“属性页属性页”对话框对话框 12.3.3 12.3.3 使用数据绑定控件浏览数据使用数据绑定控件浏览数据 数据绑定是控件显示记录集中记录的数据绑定是控件显示记录集中记录的一种方式,例如一种方式,例如DataGrid、MSHFlexGrid等网格控件通常都是通过数据绑定的方式等网格控件通常都是通过数据绑定的方式显示数据。显示数据。图图12.14 选择需要绑定的选择需要绑定的ADO控件控件 12.3.4 12.3.4 添加、修改和删除数据添加、修改和删除数据 记录的添加、修改和删除功能分别由记录的添加、修改和删除功能分别由ADO控件的控件的Recordset对象的对象的AddN
17、ew方方法、法、Update方法、方法、Delete方法实现。方法实现。1 1AddNewAddNew方法方法 功能:为可更新的功能:为可更新的Recordset对象创建对象创建新记录。新记录。语法:语法:recordset.AddNew FieldList,Values 图图12.15 人员类别设置窗体人员类别设置窗体 图图12.16 打开人员类别表打开人员类别表 2 2UpdateUpdate方法方法 保存对保存对Recordset对象的当前记录所做对象的当前记录所做的所有更改。的所有更改。语法:语法:recordset.Update Fields,Values图图12.17 图书名称修改
18、窗体图书名称修改窗体图图12.18 修改后的修改后的“表表tb_book”3 3DeleteDelete方法方法 功能:删除当前记录或记录组。功能:删除当前记录或记录组。语法:语法:recordset.Delete AffectRecords12.4 使用使用ADO对象操作对象操作SQL Server 2005 12.4.1 12.4.1 访问访问SQL Server SQL Server 20052005图图12.19 引用引用ADO对象对象 12.4.2 12.4.2 使用数据绑定控件浏览数据使用数据绑定控件浏览数据 数据绑定的方法与在使用数据绑定的方法与在使用ADO控件时控件时的方法类似
19、,都是通过设置控件的的方法类似,都是通过设置控件的DataSource属性实现的。属性实现的。12.4.3 12.4.3 添加、修改和删除数据添加、修改和删除数据 使用使用ADO时,通过时,通过Recordset对象可对象可对几乎所有的数据进行操作。对几乎所有的数据进行操作。下面利用下面利用Recordset对象的对象的AddNew和和Update方法向数据库中添加数据,但方法向数据库中添加数据,但Recordset对象必须是可更新的。对象必须是可更新的。下面讲解下面讲解Recordset对象的对象的AddNew和和Update方法给数据表增加记录。方法给数据表增加记录。AddNew方法的语法
20、如下。方法的语法如下。Recordset.AddNew FieldList,Values图图12.20 Recordset对象操作数据库中数据对象操作数据库中数据 12.4.4 12.4.4 访问视图访问视图 视图是一种逻辑对象,是一种虚拟表。视图是一种逻辑对象,是一种虚拟表。在视图中被查询的表称为视图的基表。在视图中被查询的表称为视图的基表。大多数的大多数的SQL语句都可以用在视图的语句都可以用在视图的创建中。创建中。下面对创建视图以及调用视图的方法下面对创建视图以及调用视图的方法进行介绍。进行介绍。(1)创建视图)创建视图 使用使用CREATE VIEW语句创建视图。语句创建视图。CREA
21、TE VIEW的语法格式如下:的语法格式如下:CREATE VIEWview_name(column_name,column_name)AS SELECT_statement (2)删除视图)删除视图 使用使用DROP VIEW语句删除视图语句删除视图 DROP VIEW的语法格式如下:的语法格式如下:DROP VIEW view_name (3)查询视图记录)查询视图记录 对视图中的记录进行查询的方法与对对视图中的记录进行查询的方法与对实表查询的方法相同实表查询的方法相同 12.4.5 12.4.5 访问触发器和存储过程访问触发器和存储过程 存储过程是在数据库服务器端执行的一存储过程是在数据
22、库服务器端执行的一组组SQL语句的集合,经编译后存放在数据语句的集合,经编译后存放在数据库服务器中。库服务器中。触发器是一种特殊类型的存储过程,触发器是一种特殊类型的存储过程,它不同于普通的存储过程。它不同于普通的存储过程。触发器主要是通过时间进行触发而被触发器主要是通过时间进行触发而被执行的。执行的。1 1触发器触发器 (1)创建触发器)创建触发器 利用利用CREATE TRIGGER语句可以创建语句可以创建触发器。触发器。创建触发器的语法结构如下:创建触发器的语法结构如下:CREATE TRIGGER trigger_nameON table|viewWITH ENCRYPTIONFOR|
23、AFTER|INSTEAD OF DELETE,INSERT,UPDATEASSql_statements (2)删除触发器)删除触发器 利用利用DROP TRIGGER可以删除触发器。可以删除触发器。删除触发器的语法格式如下:删除触发器的语法格式如下:DROP TRIGGER trigger ,.n (3)触发器的触发)触发器的触发 当更新数据时触发前面创建的触发器当更新数据时触发前面创建的触发器TRG_Edit,代码如下:,代码如下:Private Sub Cmd_Update_Click()更新数据操作 On Error GoTo x If Text1.Text=Or Text2.Tex
24、t=Then MsgBox 输入的员工信息不能为空,48,提示信息 Else Con2.ConnectionString=Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=db_Data Con2.Open Set Rs=Con2.Execute(UPDATE tb_employee SET 员工姓名=+Text2.Text+where 员工姓名=+Text1.Text+)Con2.Close MsgBox 数据更新成功完成,64,提示信息 End If Exit Subx:MsgBox 触发器
25、还没有创建,请先创建触发器,48,提示信息End Sub 2 2存储过程存储过程 (1)创建存储过程)创建存储过程 创建存储过程的语法格式如下:创建存储过程的语法格式如下:CREATE PROCEDURE Procedure_name;number Parameter data_type VARYING=default OUTPUT,nWITH RECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTION FOR REPLICATIONAS sql_statement n (2)删除存储过程)删除存储过程 删除存储过程的语法格式如下:删除存储过程的语法格式如下:DROP
26、PROCEDURE,(3)执行存储过程)执行存储过程 执行存储过程的语法格式如下:执行存储过程的语法格式如下:EXECUTE Procedure name12.5 开发一个学生信息系统开发一个学生信息系统 12.5.1 12.5.1 需求分析需求分析 12.5.2 12.5.2 系统总体框架设计系统总体框架设计 1 1系统目标系统目标 (1)要求有良好的人机界面,以便操作)要求有良好的人机界面,以便操作人员的使用;人员的使用;(2)要求有较好的权限管理;)要求有较好的权限管理;(3)能够实现数据信息的添加、修改、)能够实现数据信息的添加、修改、查询和删除等操作;查询和删除等操作;(4)操作方便
27、,数据稳定性好;)操作方便,数据稳定性好;(5)系统要求有安全性、协调性和完整)系统要求有安全性、协调性和完整性。性。(1)实现学生信息的添加、修改和查询;)实现学生信息的添加、修改和查询;(2)实现班级信息的添加、修改和查询;)实现班级信息的添加、修改和查询;(3)基本课程信息的添加、修改和查询;)基本课程信息的添加、修改和查询;(4)成绩信息的添加、修改和查询;)成绩信息的添加、修改和查询;(5)学生成绩信息的统计。)学生成绩信息的统计。2 2系统功能结构设计系统功能结构设计班级信息查询图图12.21 学生信息管理系统功能结构图学生信息管理系统功能结构图 12.5.3 12.5.3 数据库
28、设计数据库设计 1 1数据库的分析数据库的分析 为了实现数据的安全与稳定,学生信息为了实现数据的安全与稳定,学生信息管理系统使用了当前比较流行的管理系统使用了当前比较流行的SQL Server2005数据库。数据库。Microsoft SQL Server 2005是微软在是微软在2005年年12月推出的一款拥有多种服务的数月推出的一款拥有多种服务的数据平台。据平台。在该数据平台下在该数据平台下“数据数据”和和“分析程分析程序序”更加安全、稳定和可靠。更加安全、稳定和可靠。2 2逻辑结构设计逻辑结构设计 (1)数据表概要说明)数据表概要说明 (2)主要数据表的结构)主要数据表的结构 图图12.
29、22 数据表树型结构图数据表树型结构图 图图12.23 班级表结构班级表结构 图图12.24 课程表结构课程表结构 图图12.25 成绩表结构成绩表结构 图图12.26 用户表结构用户表结构 图图12.27 学生信息表结构学生信息表结构 12.5.4 12.5.4 公共模块设计公共模块设计 公共模块公共模块Mdl_DataServer主要用于设主要用于设置程序的数据源以及提供窗体功能的标识。置程序的数据源以及提供窗体功能的标识。全局变量全局变量stu_flag用于提供窗体用于提供窗体Frm_StuInfo的功能标识;全局变量的功能标识;全局变量cls_flag用于提供窗体用于提供窗体Frm_C
30、lsInfo的功能的功能标识;全局变量标识;全局变量course_flag用于提供窗体用于提供窗体Frm_CourseInfo的功能标识;自定义函数的功能标识;自定义函数conn用于指定数据源用于指定数据源 12.5.5 12.5.5 用户登录模块用户登录模块 登录窗口是用户进入到程序系统的门登录窗口是用户进入到程序系统的门户,通过登录模块,系统能够对登录用户户,通过登录模块,系统能够对登录用户进行身份验证,只有系统的合法用户才可进行身份验证,只有系统的合法用户才可以进入系统的主界面。以进入系统的主界面。登录模块的设计,增加了系统的安全登录模块的设计,增加了系统的安全性,这也是设计管理系统软件
31、之前,必须性,这也是设计管理系统软件之前,必须考虑的问题。考虑的问题。整个登录模块的实现过程非常简单,整个登录模块的实现过程非常简单,相信读者会很快掌握。相信读者会很快掌握。学生信息管理系统的登录界面如图学生信息管理系统的登录界面如图12.28所示。所示。图图12.28 登录界面登录界面 1 1窗体设计窗体设计 2 2代码设计代码设计 运行程序后,首先进入登录界面。运行程序后,首先进入登录界面。输入用户名和密码,单击输入用户名和密码,单击“登录登录”按按钮,如果输入正确的用户名和密码,则可钮,如果输入正确的用户名和密码,则可进入系统。进入系统。12.5.6 12.5.6 主窗体设计主窗体设计
32、主窗体是应用程序的脸面,用于调用主窗体是应用程序的脸面,用于调用应用程序的所有功能。应用程序的所有功能。学生信息管理系统的主窗体包括了实学生信息管理系统的主窗体包括了实现学生信息管理操作的全部功能。现学生信息管理操作的全部功能。在主窗体中,能够调用其他子窗体实在主窗体中,能够调用其他子窗体实现相应操作,同时也能够直接执行相应的现相应操作,同时也能够直接执行相应的命令。命令。学生信息管理系统的主窗体是通过创学生信息管理系统的主窗体是通过创建一个建一个MDI窗体实现的。窗体实现的。主窗体界面如图主窗体界面如图12.29所示。所示。图图12.29 程序主界面程序主界面 1 1窗体设计窗体设计 2 2
33、代码设计代码设计 在窗体上添加一个在窗体上添加一个TreeView控件充当控件充当窗体的导航栏,用于调用相应的窗体窗体的导航栏,用于调用相应的窗体 12.5.7 12.5.7 学生信息管理模块学生信息管理模块 学生信息管理模块能够实现对学生学学生信息管理模块能够实现对学生学号、姓名、性别等信息的管理,包括对数号、姓名、性别等信息的管理,包括对数据信息的添加、修改、删除和查询等基本据信息的添加、修改、删除和查询等基本操作。操作。单击主窗体的单击主窗体的“学生信息管理学生信息管理”菜单菜单项中的项中的“添加学生信息添加学生信息”命令,添加学生命令,添加学生信息时的程序界面如图信息时的程序界面如图1
34、2.30所示。所示。图图12.30 添加学生信息添加学生信息 由于篇幅有限,这里不提供由于篇幅有限,这里不提供“修改学修改学生信息生信息”、“查询学生信息查询学生信息”的程序界面,的程序界面,读者可以参见本书配套资源中的源程序。读者可以参见本书配套资源中的源程序。1 1窗体设计窗体设计 2 2代码设计代码设计 当添加学生信息时,单击窗体当添加学生信息时,单击窗体Frm_Stuinfo中的中的“添加添加”按钮,用于自动按钮,用于自动生成学号。生成学号。12.5.8 12.5.8 班级信息管理模块班级信息管理模块 班级信息管理模块主要实现对班级信班级信息管理模块主要实现对班级信息的添加、修改和删除
35、等操作。息的添加、修改和删除等操作。单击主窗体的单击主窗体的“班级信息管理班级信息管理”菜单菜单项中的项中的“添加班级信息添加班级信息”命令,添加班级命令,添加班级信息时的程序界面如图信息时的程序界面如图12.31所示。所示。图图12.31 添加班级信息添加班级信息 1 1窗体设计窗体设计 2 2代码设计代码设计 当添加班级信息时,单击窗体当添加班级信息时,单击窗体Frm_ClsInfo中的中的“保存保存”按钮,对添加的按钮,对添加的班级信息进行保存。班级信息进行保存。12.5.9 12.5.9 课程信息管理模块课程信息管理模块 课程信息管理模块主要实现对课程信课程信息管理模块主要实现对课程信
36、息的添加、修改和删除等操作。息的添加、修改和删除等操作。单击主窗体的单击主窗体的“课程信息管理课程信息管理”菜单菜单项中的项中的“添加课程信息添加课程信息”命令,添加课程命令,添加课程信息时的程序界面如图信息时的程序界面如图12.32所示。所示。图图12.32 添加课程信息添加课程信息 由于篇幅有限,这里不提供由于篇幅有限,这里不提供“修改课修改课程信息程信息”、“查询课程信息查询课程信息”的程序界面,的程序界面,读者可以参见本书配套资源中的程序。读者可以参见本书配套资源中的程序。1 1窗体设计窗体设计 2 2代码设计代码设计 当添加课程信息时,单击窗体当添加课程信息时,单击窗体Frm_Cou
37、rseInfo中的中的“保存保存”按钮,对添按钮,对添加的课程信息进行保存。加的课程信息进行保存。12.5.10 12.5.10 程序调试及错误处理程序调试及错误处理 对当前系统日期的年份进行格式化时,对当前系统日期的年份进行格式化时,遇到错误,不能正确获取当前年份。遇到错误,不能正确获取当前年份。小结小结 本章介绍了基于本章介绍了基于C/S结构的数据库开发结构的数据库开发技术相关知识,通过一个学生信息系统使技术相关知识,通过一个学生信息系统使读者对读者对C/S结构有一个详细的了解,并能够结构有一个详细的了解,并能够学会如何通过学会如何通过VB+SQL Server 2005数据库数据库开发数据库管理系统。开发数据库管理系统。