vb应用程序访问sql server方法探讨(3)

ZDNet软件频道 时间:2008-09-22 作者: | soft6 我要评论()
本文关键词:sql 访问 vb vb.net SQL Server
db库是sql server的本地api,sql server的visual basic库(vbsql)为visual basic程序员提供api。从一定意义上说,vbsql是连接visual basic程序到sql server的性能最好最直接的方式。vbsql包含以下三个文件:

方法3.使用vbsql对db库api编程

  db库是SQL Server的本地api,SQL Server的visual basic库(vbsql)为visual basic程序员提供api。从一定意义上说,vbsql是连接visual basic程序到SQL Server的性能最好最直接的方式。vbsql包含以下三个文件:

vbsql.vbx 包含库函数,具有访问重要的消息和处理错误的能力

vbsql.bi 包括所有的常量和变量说明

vbsql.hlp windows帮助文件,使用vbsql的指南

使用vbsql时,必需将vbsql.bi加入到visual basic工程文件中,并确保vb程序运行时有vbsql.vbx文件。 一个典型的vbsql对话中,一般要用到以下这些函数。

    函数   

功能

    sqlallocenv

初始化odbc环境,返回环境句柄

    sqlallocconnect

为连接句柄分配内存并返回连接句柄

    sqlconnect

连接一个sql数据资源

    sqldriverconnect

连接一个sql数据资源,允许驱动器向用户询问信息

    sqlallocstmt

为语句句柄分配内存并返回语句句柄

    sqlexecdirect

sql语句送到服务器

    sqlfetchadvances

到结果集的下一行(或第一行)

    sqlgetdata

从结果集的特定的一列取回数据

    sqlfreestmt

释放与语句句柄相关的资源

    sqldisconnect

切断连接

    sqlfreeconnect

释放与连接句柄相关的资源

    sqlfreeenv

释放与环境句柄相关的资源

  一般的db库api编程的过程是这样的:先通过调用sqlinit对db库进行初始化,再调用sqlconnection打开一个连接,然后就可做一些工作。

  下一页的代码是一个初始化db库并登录到服务器的通用例程。


 

[下一页]


 

下面的代码是一个初始化db库并登录到服务器的通用例程。

private sub initializeapplication()

dblib-version=sqlinit()

if dblib_version=""then

msgbox"could not initialize dblib!exit application.",
mb_iconexclamation

end

end if

end sub

private function logintoserver() as integer

logintoserver=succeed

status%=sqlsetlogintime%(logintimeout)

if gisqlconn<>0 then

sqlclose(gisqlconn) ’关闭已打开的连接

gisqlconn=sqlopenconnection(gsservername,gsloginid,gspassword,
programname, programname)

if gisqlconn<>o then

liresult=sqluse(gisqlconn,"sales")

else

logintoserver=fail

end if

end function

性能比较

  以上三种访问SQL Server的方法各有各的特点。daos方法是基于对象的,因而便于使用,但是它从visual basic到SQL Server的最慢的方式。odbc api和vbsql方法从本质上讲是基于程序的。odbc api方法通用性好,允许最强的互操作性,编程简单,但速度慢于vbsql方法。vbsql方法通过vbsql控件,提供了重要的SQL Server前端应用程序所需的灵活性、强大功能和良好性能。它具有真正的事件驱动及错误处理能力,完全支持异步处理、游标和计算列等。这些都是vbsql方法超出其它方法的优势,但其编程稍复杂。至于实际使用哪一种接口方式,在很大程度上依赖于用户的应用程序的具体情况而定。

sql

访问

vb

vb.net

SQL Server


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134