第七讲 VB访问SQL Server2000数据库的方法

更新时间:2025-03-16 03:11:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第七讲 VB访问SQL Server2000数据库的方法

一、ODBC数据源设置 1、ODBC简介

ODBC Open DatabaseConnectivity开放式数据库互连)是Mircosoft公司有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API Application应用程序编程接口)。这些API利用SQL来完成大部分的任务。ODBC本身提供对SQL语言的支持,用户可以直接将SQL送给ODBC一个基于ODBC的应用程序对数据库操作不依赖于任何DBMS,不直接与DBMS打交道,所有数据库操作由ODBC驱动程序完成。 2、ODBC数据源的创建(建立ODBC数据源)

前台系统Windows 2000 professional系统,后台Windows 2000 Server系统。以Windows 2000 professional为例:

(1)单击“开始”/设置/控制面板/管理工具/数据源ODBC,打开“ODBC数据源管理器”,选择“用户DSN or 系统DSN”,单击【添加】按钮,打开“创建用户数据源”对话框,选择“SQL Server”,单击【完成】按钮。

(2)打开“创建新的数据源到SQL Server”窗口:

1你想用什么名称命名数据源:在名称框中输入xn。 ○

2服务器:为网络中数据库服务器(默认是本地服务器Local,可选远程服务器IP)○。 3登陆ID:xn密码:xn(取决于安装SQL时所指定的密码)○。特别注意此处为确保数

据库安全起见,数据库管理员可以给用户指定一个用户名及密码。这里为简便起见使用管理员用户名及密码。

4更改数据库为:aa(所要使用的数据库)○。

二、VB访问SQL数据库

VB与SQL的连接方式有多种,限与篇幅本文仅介绍以下两种: 1.通过VB的数据库管理器

(1)启动VB窗口,选择菜单“外接程序(Add-in)/可视化数据管理器(Visual Data Manager)/文件(File)/打开数据库(Open Database)/ODBC”。

(2)输入以下信息:DSN:pubs;UID:sa;Password:******;数据库:pubs。单击

【确定】按钮,可观察到所连接的pubs数据库中有关的表。发送一条SQL语句,即可验证VB与SQL Server数据库pubs已连通。

2.使用ADO Data控件访问数据库。这是使用ADO快速创建数据绑定控件和数据提供者之间的连接。

其中数据绑定控件可以是任何具有DataSource属性的控件;数据提供者可以是任何符合OLE DB规范的数据源。

ADO Data控件是ActiveX控件,在使用前必须先将其添加到工具箱中。方法是:

(1)单击“工程”—“部件”菜单选项,选中“Microsoft ADO Data Control 6.0(OLE DB)”后,按“确定”,此时ADO数据控件便出现在工具箱中。

(2)将ADO Data控件添加到窗体上,其默认的名称属性为“Adodc1”。 (3)右击ADO Data控件,选“ADODC属性”,弹出“属性页”对话框。

(4)选中“使用连接字符串”(也可以选择“ODBC数据源名称”),再单击“生成”按钮,弹出“数据链接属性”对话框。

(5)选择“提供程序”选项卡,在列表中选择“Microsoft OLE DB Provider For SQL SERVER”选项,单击“下一步”按钮。

(6)指定服务器的名称和登录信息并选择本连接要使用的数据库文件。

(7)单击“测试连接”按钮以确定连接是否正常。若得到测试成功的消息,单击“确定”按钮以继续。 (8)在“属性页”对话框中选择“记录源”选项卡,在命令类型下拉列表中选择“2-adCmdTable”选项,在表或存储过程名称下拉列表中选择数据表“authors”。(若选择的命令类型为“1-adCmdText”,则可在命令文本框中输入SQL查询语句select * from authors),然后单击“确定”按钮。

(9)在窗体上再添加一个数据绑定控件DataGridl,设定其DataSource为Adodc1。

运行结果:

通过上述操作便实现了SQL Server数据库aa中authors表的浏览功能,得到预期的运行结果。

远程连接格式:

ConnectionString=\

Server};server=211.85.184.107 ;

uid=sa;pwd=; ConnectionTimeout=0;database=aa\

在VB中用ADO实现数据库访问

Visual Basic作为一种面向对象的可视化编程工具,具有简单易学、灵活方便和易于扩充的特点,并且支持一套出色的数据库访问技术。Microsoft为其提供了与SQL Server通信的API函数集及工具集,因此它越来越多地用作前台应用程序的开发,与后台的Microsoft SQL Server相结合,从而提供一个高性能的客户机-服务器方案。

一、VB数据库访问技术的发展

早期的Visual Basic数据访问工具是简单的ASCII文件访问工具,极少数SQL Server 的前端应用程序是数据接口VBSQL编写的。在Visual Basic 3.0时代,许多用户强调转移包含远程数据源的ISAM(Indexed Sequential Access Method,索引顺序存取法)数据,为此Microsoft设计了Microsoft Jet Database Engine(或简称为Jet)和DAO(Data Access Object),使得Visual Basic Access开发人员很容易地同Jet接口,其操作针对记录和字段,主要用于开发单一的数据库应用程序。随着使用者需求的不断改变,Visual Basic又包含了更快的访问远程数据和对ODBC数据源访问的优化,出现了新的数据库接口RDO(Remote Data Object),它是访问关系型ODBC数据源的最佳界面接口,其操作针对行和列。ADO(ActiveX Data Objects)作为另一种可供选择的技术出现,正在逐渐代替其他数据访问接口。ADO比DAO和RDO具有更好的灵活性,更易使用,实现的功能也更全面。 二、ActiveX数据对象ADO

ADO是一种用于开发访问OLE DB数据源应用程序的API,是Visual Basic中新的数据访问标准。ADO提供了更为高级的易于理解的访问机制,具有更加简单、更加灵活的操作性能。ADO访问数据是通过OLE DB来实现的,OLE DB不仅能够以SQL Server、Oracle、Access等数据库文件为访问对象,还可对Excel表格、文本文件、图形文件、电子邮件等各种各样的数据通过统一的接口进行存取。ADO集中了DAO和RDO的优点,是DAO、RDO的后继产物而且不像DAO和RDO那样依赖于对象层次。ADO对象模型定义了一个可编程的分层对象集合,主要由七个对象成员Connection、Command、Recordset、Error、Parameter、Field和Property以及四个集合对象Errors、Parameters、Fields、Properties所组成。每个 Connection、Command、Recordset和Field对象都有Properties集合。 三、ADO数据库访问技术的应用

在VB中,使用ADO访问数据库主要有两种方式,一种是使用ADO Data控件,通过对控件的绑定来访问数据库中的数据,即非编程访问方式;另一种是使用ADO对象模型,通过定义对象和编写代码来实现对数据的访问,即编程访问方式。下面以SQL Server数据库为例,说明这两种方式的使用。首先在SQL Server 2000中建立一个aa的数据库,在aa数据库中建立xsh数据表,然后将此数据表的信息通过数据绑定控件DataGrid显示出来。

(一)使用ADO Data控件访问数据库。这是使用ADO快速创建数据绑定控件和数据提供者之间的连接。其中数据绑定控件可以是任何具有DataSource属性的控件;数据提供者可以是任何符合OLE DB规范的数据源。

ADO Data控件是ActiveX控件,在使用前必须先将其添加到工具箱中。方法是:

(1)单击“工程”—“部件”菜单选项,选中“Microsoft ADO Data Control 6.0(OLE DB)”后,按“确定”,此时ADO数据控件便出现在工具箱中。

(2)将ADO Data控件添加到窗体上,其默认的名称属性为“Adodc1”。 (3)右击ADO Data控件,选“ADODC属性”,弹出“属性页”对话框。

(4)选中“使用连接字符串”(也可以选择“ODBC数据源名称”),再单击“生成”按钮,弹出“数据链接属性”对话框。

(5)选择“提供程序”选项卡,在列表中选择“Microsoft OLE DB Provider For SQL SERVER”选项,单击

“下一步”按钮。

(6)指定服务器的名称和登录信息并选择本连接要使用的数据库文件。

(7)单击“测试连接”按钮以确定连接是否正常。若得到测试成功的消息,单击“确定”按钮以继续。 (8)在“属性页”对话框中选择“记录源”选项卡,在命令类型下拉列表中选择“2-adCmdTable”选项,在表或存储过程名称下拉列表中选择数据表“xsh”。(若选择的命令类型为“1-adCmdText”,则可在命令文本框中输入SQL查询语句select * from authors),然后单击“确定”按钮。

(9)在窗体上再添加一个数据绑定控件DataGridl,设定其DataSource为Adodc1。

运行结果:

通过上述操作便实现了SQL Server数据库aa中authors表的浏览功能,得到预期的运行结果。 (二)使用ADO 对象模型访问数据库。为了能够在程序中使用ADO对象编程,在连接数据库前,需要在Visual Basic 6.0菜单 “工程”—“引用”中选择Microsoft ActiveX Data Objects 2.8 Library组件。运用ADO对象模型的主要元素:Connection(连接)中的ConnectionString属性进行连接,ConnectionString为可读写string类型,指定一个连接字符串,告诉ADO如何连接数据库。

(1)首先创建一组ADO对象用于设置打开连接和产生结果集。声明语句如下: Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset

(2)创建ADO对象实例,声明了对象以后,还需要创建对象实例,否则不能使用。以下是两条重要语句:

Set cn =New ADODB.Connection Set rs =New ADODB.Recordset

(3)设置Connection对象实例ConnectionString属性连接到数据库。有两种方法:

方法一:有源数据库连接。首要任务是要注册数据源名称(DSN),通过配置ODBC环境,进行数据源的注册,然后才能对数据源进行连接、访问和操作。例如,DSN数据源是“xn”、用户名是“xn”、口令为xn,与数据库“xsh”建立的连接代码如下:

cn.ConnectionString=\

方法二:无源数据库连接。不需要配置ODBC数据源,区别在于是否使用了DSN来决定。例如,提

供连接所需要的特定信息包括:服务器名称是“211.85.184.107”、用户名是“xn”、口令为xn,与数据库“aa”建立的连接代码如下:

cn.ConnectionString=\ (4)设置好连接属性后,就可以打开连接对象了。语句如下: cn.Open

这样,VB和后台SQL Server数据库的连接就创建好了。

实例:创建示图界面,并以无源数据库连接的方式完成上例同样的功能。编写代码如下: Dim cn As New ADODB.Connection

Dim rs As New ADODB.Recordset Dim cmd As New ADODB.Command

Private Sub Form_Load()

Set cn = New ADODB.Connection Set rs = New ADODB.Recordset

'有源连接(通过ODBC的DNS连接)

'cn.ConnectionString = \'无源连接(直接通过SQLServer服务器IP地址连接) cn.ConnectionString

=

server};server=211.85.184.107;uid=sa;pwd=swj;ConnectionTimeout=0;Database=aa\

cn.Open

cmd.ActiveConnection = cn cmd.CommandType = adCmdText

cmd.CommandText = \rs.CursorLocation = adUseClient rs.CursorType = adOpenDynamic rs.LockType = adLockReadOnly rs.Open cmd

Set DataGrid1.DataSource = rs

'cn.Execute \'cn.Execute (\'Set rs = cn.Execute(\

\

本文来源:https://www.bwwdw.com/article/xza.html

Top