在VB怎么查询数据库中的数据啊!

在VB怎么查询数据库中的数据啊!,第1张

1.一个简单的查询的例子:

'*定义一个连接

Dim Conn As ADODB.Connection

'*定义一个记录集

Dim mrc As ADODB.Recordset

'*分别实例化

Set Conn = New ADODB.Connection

set mrc =New ADODB.Recordset

'*定义一个连接字符串

dim ConnectString as string

ConnectString="provider=microsoft.jet.oledb.4.0data source=" &App.Path &"\data\数据库名.mdbjet oledb:database password=数据库密码"

'*打开连接

Conn1.Open ConnectString

'*定义游标位置

Conn1.CursorLocation = adUseClient

'*查询记录集(从student表中找出名子为"张三"的记录)

mrc.open "select * from student where name='张三'",Conn, adOpenKeyset, adLockOptimistic

'*现在你已经得到了你想要查询的记录集了,那就是mrc

'*你可以把此记录集与DataGrid榜定,用datagrid显示你查询的记录

set me.datagrid.datasource=mrc

要查找数据库信息,关键是要解决链接数据库的问题,下面简述Vb如何SQL数据库:

有两种方法可以实现,一种是通过ODBC数据源的配置进行连接,一种是通过纯代码编辑进行连接,下面我们就详细介绍一下这两种连接方法。

ODBC数据源VB连接SQL数据库

一、配置ODBC数据源

1、在控制面板中,双击管理工具,然后打开ODBC数据源管理器。

2、在“系统DSN”选项卡中,单击“添加”按钮,打开“创建新数据源”对话框,在“名称”列表框中选择“SQL Server”。选好单击完成

3、在打开“建立新的数据源到SQL Server”对话框,在“名称”文本框输入新数据源的名称,描述数据源按你理解的方式来写(随意)。“服务器”就选择你要连接到的服务器。

4、选择使用用户输入登录的ID和密码的SQL 验证。选连接SQL默认设置

5、再下一步下一步,完成。测试数据源看连接是否成功就行了。成功后按确定。

二、VB中设置连接

1、添加部件Mircrosoft ADO Data Control 6.0(OLEDB),把部件拖到窗体。

2、对ADO部件点右键选属性,选择使用连接字符串,按生成。

3、选择Mircosoft OLE DB Providar for SQL Server按下一步

4、

1)输入服务器名称

2)使用指定的服务器信息

3)在服务器上选择数据库

这时就选择你在SQL Server建好的数据库就行了

5、测试连接可以看到连接是否成功!

通过代码VB连接SQL数据库

Public conn As New ADODB.Connection

Public rs As New ADODB.Recordset

Public addFlag As Boolean

Public Function OpenCn(ByVal Cip As String) As Boolean

Dim mag As String

On Error GoTo strerrmag

Set conn = New ADODB.Connection

conn.ConnectionTimeout = 25

conn.Provider = "sqloledb"

conn.Properties("data source").Value = Cip '服务器的名字

conn.Properties("initial catalog").Value = "zqoa" '库名

'conn.Properties("integrated security").Value = "SSPI" '登陆类型

conn.Properties("user id").Value = "sa"

conn.Properties("password").Value = "sa"

conn.Open

OpenCn = True

addFlag = True

Exit Function

strerrmag:

mag = "Data can't connect"

Call MsgBox(mag, vbOKOnly, "Error:Data connect")

addFlag = False

Exit Function

End Function

Public Sub cloCn()

On Error Resume Next

If conn.State <>adStateClosed Then conn.Close

Set conn = Nothing

End Sub

Public Function openRs(ByVal strsql As String) As Boolean '连接数据库记录集

Dim mag As String

Dim rpy As Boolean

On Error GoTo strerrmag

Set rs = New ADODB.Recordset

If addFlag = False Then rpy = True

With rs

.ActiveConnection = conn

.CursorLocation = adUseClient

.CursorType = adOpenKeyset

.LockType = adLockOptimistic

.Open strsql

End With

addFlag = True

openRs = True

End

'Exit Function

strerrmag:

mag = "data not connect"

Call MsgBox(mag, vbOKOnly, "error:connect")

openRs = False

End

'Exit Function

End Function

Public Sub cloRs()

On Error Resume Next

If rs.State <>adStateClosed Then rs.Clone

Set rs = Nothing

End Sub

虽然不推荐,你可以试下放到公共变量里传递

全局变量当然可以保留值

模块

Public

TestRS

As

ADODB.Recordset

窗体1

Set

TestRS

=

rs

窗体2

MsgBox

TestRS.RecordCount


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10099490.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存