第17章VB/ SQL Server应用程序开 发 17-1VB前端开发概泷 17-2客户端与 SQL Server的关联 17-3使用ADO控件访问 SQL Server数据 库 17-4使用ADO对象访问 SQL Serve数据 库 17-5本章小结 本章主要介绍如何在Ⅴ isual basic6中利用ADO开 发 SQL Server2000的数据库应用系统。要求重点掌握在 Visual basic6中用ADO数据控件和ADO对象访问、控制 SQL Server2000数据库对象的方法,如对表、视图、存 储过程等的操作和控制等
第17章 VB / SQL Server应用程序开 发 17-1 VB前端开发概述 17-2 客户端与SQL Server的关联 17-3 使用ADO控件访问SQL Server 数据 库 17-4 使用ADO对象访问SQL Server 数据 库 17-5 本章小结 本章主要介绍如何在Visual Basic 6中利用ADO开 发SQL Server 2000的数据库应用系统。要求重点掌握在 Visual Basic 6中用ADO数据控件和ADO对象访问、控制 SQL Server 2000数据库对象的方法,如对表、视图、存 储过程等的操作和控制等
第17章VB/ SQL Server应用程序开发 17-1VB前端开发概泷 Visual basic6是 Microsoft visual studio98的成员之一, Microsoft为其提 供了与 SQLSever通信的各种API囪数集及对象库,提供了更好的功能和性能,因此它 越来越多地用作大型公司数据库和客户/服务器应用程序的前端开发工具,与后端 (后台)的 Microsoft SQL Server相结合,VB能够提供一种高性能的客户/服务器方 案 使用 Visual basic开发 SQL server数据库应用程序时,主要有以下常用编程接口可 供选择,它们分别是: ●DAO( Data Access objects,数据访问对象)该对象通过Jet数据库引擎与ODBC 的数据源进行通信,可以读取 Access数据库(MDB文件)中的数据,也可以从 FoXPro或 dBase等ISAM数据库和任何ODBC数据源中读取数据,包括 SQL Server RDO( Remote Data Objects,远程数据对象),该对象实质就是 ODBC API的对 象化,也就是将标准的C函数包装成 Visual basic开发工具易于调用的对象模型,它提 供用代码生成和操作远程○DBC数据库系统组件的框架。RD○对象模型比DA○对象模 型简单,功能比DAO多。 ●ADO( Active Data Objects,活动数据对象),它改进了DAO、RDO和各种其他 数据访问接口的缺陷,或者说它是一种更加标准的接口,架起了不同数据库、文件系 统和E—mai服务器之间的公用桥梁 ● ODBC API。ODBC是 OLE DE的前身,首次对不同数据库台提供了数据的标准接口
第17章 VB / SQL Server应用程序开发 17-1 VB前端开发概述 Visual Basic 6 是 Microsoft Visual Studio 98 的成员之一,Microsoft为其提 供了与SQLSever通信的各种API函数集及对象库,提供了更好的功能和性能,因此它 越来越多地用作大型公司数据库和客户/服务器应用程序的前端开发工具,与后端 (后台)的Microsoft SQL Server相结合,VB能够提供一种高性能的客户/服务器方 案。 使用Visual Basic开发SQL server数据库应用程序时,主要有以下常用编程接口可 供选择,它们分别是: l DAO(Data Access Objects,数据访问对象) 该对象通过Jet数据库引擎与ODBC 的数据源进行通信,可以读取Access数据库(MDB文件)中的数据,也可以从 FoxPro或dBase等ISAM数据库和任何ODBC数据源中读取数据,包括 SQL Server。 l RDO(Remote Data Objects,远程数据对象),该对象实质就是ODBC API的对 象化,也就是将标准的C函数包装成Visual Basic开发工具易于调用的对象模型,它提 供用代码生成和操作远程ODBC数据库系统组件的框架。RDO对象模型比DAO对象模 型简单,功能比DAO多。 l ADO(Active Data Objects,活动数据对象),它改进了DAO、RDO和各种其他 数据访问接口的缺陷,或者说它是一种更加标准的接口,架起了不同数据库、文件系 统和E-mail服务器之间的公用桥梁。 l ODBC API 。ODBC是OLE DB的前身,首次对不同数据库平台提供了数据的标准接口
通过○DBC访问数据要求特定数据源有相应的驱动器。 ODBC API是数据源的低级接 口,可以通过 API Declare语句在 Visual basic中使用 ODBC AP。ADO是微软推出 的新一代的数据访问技术,它使用户能够编写应用程序以通过 OLEDB提供者访问和 操作数据库服务器中的数据。 OLEDB是一组“组件对象模型”(COM)接口,是新的数 据库低层接口,它封装了ODBC的功能,并以统一的方式访问存储在不同信息源中的 数据。 OLE DB是 Microsoft uda( Universal Data Access,见图17-1)策略的技 术基础。 OLE DB为任何数据源提供了高性能的访问,这些数据源包括关系和非关系 数据库、电子邮件和文件系统、文本和图形、自定乂业务对象等等。也就是说,OLE DB并不局限于ISAM、Jet甚至关系数据源,它能够处理任何类型的数据,而不考虑 它们的格式和存储方法。在实际应用中,这种多样性意味着可以访问驻留在 Excel电 子数据表、文本文件、电子邮件/目录服务甚至邮件服务器,诸如 Microsoft Exchange中的数据。但是, OLED应用程序编程接口的目的是为各种应用程序提 供最佳的功能,它并不符合简单化的要求。用户需要的API应该是一座连接应用程序 和 OLE DB的桥梁,这就是 ActiveX Data Objects(ADO)。 ADO的一般特征如下 能够从一个查询返回多个记录集 易于使用与高级记录集缓存管理。 复杂临时表类型,包括批处理和服务器方与客户机方临时表 高性能与优秀的错误捕获 灵活性一适用于现有数据库技术和所有 OLE DB数据提供者。 临时表的编程控制 可复用、可改变属性的对象。 同步、异步和事件驱动查询执行。 与其它数据访问对象(如RDO和DAO)相比,ADO对象模型的对象更少,使用更简单
通过ODBC访问数据要求特定数据源有相应的驱动器。ODBC API是数据源的低级接 口,可以通过API Declare语句在Visual Basic中使用ODBC API。ADO是微软推出 的新一代的数据访问技术,它使用户能够编写应用程序以通过 OLEDB 提供者访问和 操作数据库服务器中的数据。OLEDB是一组“组件对象模型”(COM) 接口,是新的数 据库低层接口,它封装了ODBC的功能,并以统一的方式访问存储在不同信息源中的 数据。OLE DB是Microsoft UDA(Universal Data Access,见图17-1)策略的技 术基础。OLE DB 为任何数据源提供了高性能的访问,这些数据源包括关系和非关系 数据库、电子邮件和文件系统、文本和图形、自定义业务对象等等。也就是说,OLE DB 并不局限于 ISAM、Jet 甚至关系数据源,它能够处理任何类型的数据,而不考虑 它们的格式和存储方法。在实际应用中,这种多样性意味着可以访问驻留在 Excel 电 子数据表、文本文件、电子邮件/目录服务甚至邮件服务器,诸如 Microsoft Exchange 中的数据。但是,OLEDB 应用程序编程接口的目的是为各种应用程序提 供最佳的功能,它并不符合简单化的要求。用户需要的API 应该是一座连接应用程序 和 OLE DB 的桥梁,这就是 ActiveX Data Objects (ADO)。 ADO的一般特征如下: l 能够从一个查询返回多个记录集。 l 易于使用与高级记录集缓存管理。 l 复杂临时表类型,包括批处理和服务器方与客户机方临时表。 l 高性能与优秀的错误捕获。 l 灵活性一适用于现有数据库技术和所有OLE DB数据提供者。 l 临时表的编程控制。 l 可复用、可改变属性的对象。 l 同步、异步和事件驱动查询执行。 与其它数据访问对象(如RDO和DAO)相比,ADO对象模型的对象更少,使用更简单
客户机应用程序 ADO OLEDB ODBC 关采数据 井关系数据 QLServer E-mail 大型 Jet Text Oracle Directory Services 数据库 DB2 ISAM Database 图17-1 Universal Data Access结构
客户机应用程序 ADO OLEDB 关系数据 SQL Server Jet Oracle DB2 ISAM DataBase 非关系数据 E-mail Text DirectoryServices 大型 数据库 ODBC 图17-1 Universal Data Access结构
17-2客户端与 SQL Server的关联 SQL Server2000作为 Microsoft. NET企业服务器的重要组成部分,是以后 台数据库的身份出现的。对于应用 SQL Server数据库系统的用户,访问和操作数 据库通常是通过前端(客户端)来完成的,这就是通常所说的客户机/服务器模式 ADO的目的是让应用程序访问不同地点不同格式的各种数据,这是通过 OLEDE数据提供者实现的,其提供数据给数据使用者(这里中是ADO)。通过 OLE DB访问不同数据源的要求是○LEDB数据提供者发展的必然结果。就像公司 对不同数据源发布ODBC驱动器一样,他们也发布 OLE DB数据提供者以满足通过 OLE DB访问数据的需求。 17-3使用ADO控件访问 SQL Server数据库 Visual basic60具有的最新数据组件是ADO数据控件,ADO数据控件 可以使用户通过 OLE DB访问本地或远程数据源并且把它们与窗体的其他控件相结 合而不需编写很多代码。其常用的属性为 Recordset(记录集),其实ADO控件就 是返回数据源提供的记录集。 17-3-1ADO控件 AD○数据控件使用○对象来建立数据约束控件和数据提供者之间的连接,并 快速创建数据集,然后将数据通过数据约束控件提供给用户。其中数据约束控件可 以是任何具有“数据源”属性的控件,而数据提供者可以是任何符合 OLE DB规范 的数据源。ADO数据控件的图标和添加到窗体上的形状如图17-2所示
SQL Server 2000作为Microsoft .NET企业服务器的重要组成部分,是以后 台数据库的身份出现的。对于应用SQL Server数据库系统的用户,访问和操作数 据库通常是通过前端(客户端)来完成的,这就是通常所说的客户机/服务器模式。 ADO的目的是让应用程序访问不同地点不同格式的各种数据,这是通过 OLEDB数据提供者实现的,其提供数据给数据使用者(这里中是ADO)。通过 OLE DB访问不同数据源的要求是OLE DB数据提供者发展的必然结果。就像公司 对不同数据源发布ODBC驱动器一样,他们也发布OLE DB数据提供者以满足通过 OLE DB访问数据的需求。 17-3 使用ADO控件访问SQL Server 数据库 Visual Basic 6.0具有的最新数据组件是ADO数据控件,ADO数据控件 可以使用户通过OLE DB 访问本地或远程数据源并且把它们与窗体的其他控件相结 合而不需编写很多代码。其常用的属性为Recordset(记录集),其实ADO控件就 是返回数据源提供的记录集。 17-3-1 ADO控件 ADO数据控件使用O对象来建立数据约束控件和数据提供者之间的连接,并 快速创建数据集,然后将数据通过数据约束控件提供给用户。其中数据约束控件可 以是任何具有“数据源”属性的控件,而数据提供者可以是任何符合OLE DB规范 的数据源。ADO数据控件的图标和添加到窗体上的形状如图17-2所示。 17-2 客户端与SQL Server的关联