如何使用 VB6 在 MS-Access 数据库 Table 中搜索?
How to search inside a MS-Access Database Table using VB6?
我正在为一个学校项目使用 VB6,我想使用 Access 创建一个带有数据库的图书馆管理系统。 ADODC 和 DataGrid 工作正常,我可以添加新条目,也可以删除它们。但是,如果我想根据字段搜索特定项目怎么办。我似乎无法完成它。
你可以使用这个:
With Datagrid
varBookmark = .Bookmark
If (.SelBookmarks.Count <> 0) Then
.SelBookmarks.Remove 0
End If
Adodc1.Recordset.MoveFirst
Adodc1.Recordset.Find "[Name of column you want to search] like '" & txtSearch.Text & "'"
If Adodc1.Recordset.EOF Or Adodc1.Recordset.BOF Then
MsgBox "No Student Found.", vbInformation, "Error"
Adodc1.Recordset.Bookmark = varBookmark
Else
MsgBox "Student found Successfully", vbInformation, "Success"
.SelBookmarks.Add Adodc1.Recordset.Bookmark
Me.Hide
End If
End With
将顶部的数据网格名称更改为您正在使用的数据网格的名称以及 adodc。
打开您放置 DataGrid
和 ADODataControl
的 Form
。
在工具箱上,双击文本框图标以将TextBox
添加到表单。
在工具箱上,双击 标签图标 以将 Label
添加到表单。
双击TextBox
打开代码编辑器window,在Text1_Change()
事件中添加这段代码(假设这里你的ADODataControl
被称为Adodc1 和需要搜索的Field
叫做Title) :
If Text1.Text > "" Then
Adodc1.Recordset.Filter = "Title Like '*" & Replace(Text1.Text, "'", "''") & "*'"
Else
Adodc1.Recordset.Filter = adFilterNone
Adodc1.Recordset.Requery
End If
在同一代码编辑器 window 的顶部, 左侧 ,select 您的 ADODataControl
,以及 右侧 select MoveComplete
.
在 MoveComplete
事件中添加这段代码:
Label1.Caption = "Records: " & pRecordset.RecordCount
就是这样。
您的表单的外观和行为应如下图所示(如果不是这种情况,很抱歉,您没有在问题中提供足够的详细信息):
此示例是使用随 VB 提供的 Biblio.mdb 数据库构建的。
我正在为一个学校项目使用 VB6,我想使用 Access 创建一个带有数据库的图书馆管理系统。 ADODC 和 DataGrid 工作正常,我可以添加新条目,也可以删除它们。但是,如果我想根据字段搜索特定项目怎么办。我似乎无法完成它。
你可以使用这个:
With Datagrid
varBookmark = .Bookmark
If (.SelBookmarks.Count <> 0) Then
.SelBookmarks.Remove 0
End If
Adodc1.Recordset.MoveFirst
Adodc1.Recordset.Find "[Name of column you want to search] like '" & txtSearch.Text & "'"
If Adodc1.Recordset.EOF Or Adodc1.Recordset.BOF Then
MsgBox "No Student Found.", vbInformation, "Error"
Adodc1.Recordset.Bookmark = varBookmark
Else
MsgBox "Student found Successfully", vbInformation, "Success"
.SelBookmarks.Add Adodc1.Recordset.Bookmark
Me.Hide
End If
End With
将顶部的数据网格名称更改为您正在使用的数据网格的名称以及 adodc。
打开您放置 DataGrid
和 ADODataControl
的 Form
。
在工具箱上,双击文本框图标以将TextBox
添加到表单。
在工具箱上,双击 标签图标 以将 Label
添加到表单。
双击TextBox
打开代码编辑器window,在Text1_Change()
事件中添加这段代码(假设这里你的ADODataControl
被称为Adodc1 和需要搜索的Field
叫做Title) :
If Text1.Text > "" Then
Adodc1.Recordset.Filter = "Title Like '*" & Replace(Text1.Text, "'", "''") & "*'"
Else
Adodc1.Recordset.Filter = adFilterNone
Adodc1.Recordset.Requery
End If
在同一代码编辑器 window 的顶部, 左侧 ,select 您的 ADODataControl
,以及 右侧 select MoveComplete
.
在 MoveComplete
事件中添加这段代码:
Label1.Caption = "Records: " & pRecordset.RecordCount
就是这样。 您的表单的外观和行为应如下图所示(如果不是这种情况,很抱歉,您没有在问题中提供足够的详细信息):
此示例是使用随 VB 提供的 Biblio.mdb 数据库构建的。