admin 管理员组文章数量: 1184232
2024年3月19日发(作者:uuid mysql)
VB访问SQLServer数据库技术全揭密
摘 要:
本文讨论了Visual Basic应用程序访问SQL Server数据库的几种常用的方法,分别说明了每种方
法的内部机理并给出了每种方法的一个简单的实例,最后比较了每种方法性能和优缺点。
一、引言
SQL Server是微软推出的中小型网络数据库系统,是目前最常用的数据库系统之一。随着SQL
Server网络数据库应用程序日益增多,这种Web数据库应用系统的正常运行一般依赖于已存在的用户数
据库。创建维护数据库的工作可用SQL Server提供的SQL Enterprise Manager工具来进行,如能提
供一种定制的数据库管理工具,通过管理应用程序来管理数据库及其设备,对用户来说无疑是最理想的。
Visual Basic作为一种面向对象的可视化编程工具,具有简单易学,灵活方便和易于扩充的特点。
而且Microsoft为其提供了与SQL Server通信的API函数集及工具集,因此它越来越多地用作大型公司
数据和客户机—服务器应用程序的前端,与后端的Microsoft SQL Server相结合,VB能够提供一个高
性能的客户机—服务器方案。
二、VB访问SQL Server数据的常用方法
使用Visual Basic作为前端开发语言,与SQL Server接口有几种常用的方法,即:
①数据访问对象/Jet
②为ODBC API编程
③使用SQL Server的Visual Basic库(VBSQL)为DB库的API编程
④RDO 远程数据对象(RemoteData Objects)
⑤ADO 数据对象(Active Data Objects)
1、数据访问对象/Jet
VB支持Data Access Objects(DAOs)的子集。DAO的方法虽然不是性能最好的管理客户机—服
务器之间的对话方式,但它的确有许多优点。DAO/Jet是为了实现从VB访问Access数据库而开发的程
序接口对象。使用DAOs访问SQL Server的过程如下:应用程序准备好语句并送至Jet,Jet引擎
()优化查询,载入驱动程序管理器并与之通讯,驱动程序管理器()通过调用驱
动器()的函数,实现连接到数据源,翻译并向SQL Server提交SQL语句且返回结果。
下面是一个用DAOs访问SQL Server的VB实例。
注释:Form Declarations
Dim mydb As Database
Dim mydynaset As Dynaset オ
Private Sub Form_Load()
Set mydb = OpenDatabase("", False, False, "ODBC; DSN=Myserver; WSID=LCL;
DATABASE = sales")
Set mydynaset = mydb CreateDynaset("Select*from Customers") オ
End Sub ァ
上述例子是以非独占、非只读方式打开sales数据库,并检索Customers表中的所有字段。
OpenDatabase函数的最后一个参数是ODBC连接字符串参数,它指明了Microsoft Access连接到SQL
Server所需要知道的一些内容。其中“DSN”为数据源名,“WSID”为工作站名,“DATABASE”为所要访
问的数据库名。
2、利用ODBC API编程
ODBC(Open Database Connectivity)的思想是访问异种数据库的一种可移植的方式。与数据资源
对话的公用函数组装在一个称为驱动程序管理器()的动态连接中。应用程序调用驱动程序管理
器中的函数,而驱动程序管理器反过来通过驱动器()把它们送到服务器中。
下面的代码使用上面一些函数先登录到一个服务器数据库,并为随后的工作设置了语句句柄。
Global giHEnv As Long
Global giHDB As Long
Global giHStmt As Long
Dim myResult As integer
Dim myConnection As Srting
Dim myBuff As String*256
Dim myBufflen As Integer
If SQLAllocEnv(giHEnv)<>SQL_SUCCESS Then
版权声明:本文标题:VB访问SQLServer数据库技术 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1710854615a576422.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论