2011-04-04 59 views
1

嘿,我可以問你一些問題嗎?我正在使用VB6.0,並且我的數據庫連接通過DataControl有問題。我有一個名爲tblEmployee表,另一種是tblPosition然後我分別通過了兩個表的價值兩個DataControls。我怎樣才能得到某一排的價值位置字段。用我的代碼,我的位置字段只返回第一行。這裏是我的代碼帶DataControl數據庫編程的VB6.0

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 

末次

回答

0

我不能看到你「傳遞價值」到你DataControl上命名爲datPosition。這可能是問題嗎?例如在這裏你有

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 

還要考慮使用的記錄集Filter除去不通過行符合您的標準,則RecordCount循環的行那符合你的標準。

進一步考慮通過創建tblEmployeetblPosition之間的連接返回單個記錄,無論是在SQL代碼或返回使用MsDataShape其SHAPE語法分層記錄。

+0

是的我設置了兩個DataControls [DatabaseName,RecordSetType和RecordSource]的屬性。我該怎麼做,_ ** tblEmployee ** _有idxEmployee的索引,_ ** tblPosition ** _有idxPosition。請給我一些語法。 – aer 2011-04-05 00:32:50

+0

程序首先應該查找ID號,當ID號存在時,應分別在文本框中顯示更多信息[lname,fname,mi,position]。 – aer 2011-04-05 00:43:34