VB6.0与DataControl数据库编程
嘿,我能问你件事吗?我正在使用VB6.0,通过DataControl连接数据库时遇到一些问题。我有一个名为tblEmployee的表,另一个是tblPosition,然后我将两个表的值分别传递给两个DataControls。然后如何获得某一行位置字段的值。对于我的代码,“我的位置”字段仅返回第一行。这是我的密码VB6.0与DataControl数据库编程,vb6,Vb6,嘿,我能问你件事吗?我正在使用VB6.0,通过DataControl连接数据库时遇到一些问题。我有一个名为tblEmployee的表,另一个是tblPosition,然后我将两个表的值分别传递给两个DataControls。然后如何获得某一行位置字段的值。对于我的代码,“我的位置”字段仅返回第一行。这是我的密码 Private Sub cmdSearchEmployee_Click() With datEmployee.Recordset datEmployee.Recordset.In
Private Sub cmdSearchEmployee_Click()
With datEmployee.Recordset
datEmployee.Recordset.Index = "idxid"
datEmployee.Recordset.Seek "=", txtIDNumber.Text
If .NoMatch = True Then
MsgBox ("No Record Found!")
Else
Me.txtLastName.Text = .Fields("lname")
Me.txtFirstName.Text = .Fields("fname")
Me.txtMiddleName.Text = .Fields("mi")
With datPosition.Recordset
Me.txtPosition.Text = .Fields("position")
End With
End If
End With
End Sub我看不出您是否已将该值传递给名为datPosition的数据控件。这可能是问题所在吗?e、 你在哪里
With datPosition.Recordset
Me.txtPosition.Text = .Fields("position")
End With
…应该更像这样:
With datPosition.Recordset
.Index = "some_index??"
.Seek "=", "some_value??"
Me.txtPosition.Text = .Fields("position")
End With
还考虑使用记录集的筛选器删除与标准不匹配的行,然后记录计数通过符合标准的行循环。
进一步考虑通过在TBLeMeb和TBLUTIT之间创建连接来返回单个记录集,无论是在SQL代码中还是使用具有它的语法的MSDATAsHAPE返回一个分层记录集。
是的,我设置了两个DATACONTROLLS的属性[数据库名、记录集类型和记录源]。我该怎么做呢,TBlemEmployee有一个idxEmployee索引,而tblPosition有一个idxPosition索引。请给我一些语法。程序应该首先查找ID号,当ID号存在时,进一步的信息[lname、fname、mi、position]应该分别出现在文本框中。