0

我需要根据从vb6中的ms访问输入的用户名访问员工表的薪水字段。我在一个表单中读取用户名和密码,然后进入另一个显示用户名对应的薪水的表单。我正在使用 Adodc1 连接。我知道 SQL 但不知道如何在 vb 中实现它...我想确切地知道在哪里使用 sql 查询?谢谢

4

1 回答 1

2

如果您使用的是 DAO,这应该会有所帮助。将以下函数添加到模块中,并在 MyDB 中传递对 OPENED 数据库的引用(数据类型为 DAO.Database,使用 DAO.OpenDatabase() 函数打开数据库):

Public Function GetQueryResults(ByRef MyDB as DAO.Database, SQLQuery As String) As DAO.Recordset
    Dim Q As DAO.QueryDef, R As DAO.Recordset

    Set Q = MyDB.CreateQueryDef("", SQLQuery)
    Set R = Q.OpenRecordset

    Set GetQueryResults = R
End Function

Public Function GetFirstValueFromQuery(MyDB As DAO.Database, SQLQuery As String) As String
    If (MyDB Is Nothing) Then Exit Function

    Dim RES As DAO.Recordset, T As String

    Set RES = GetQueryResults(MyDB, SQLQuery)

    With RES
        T = .Fields(0).Value
        GetFirstValueFromQueryGeneral = T
    End With

    RES.Close
End Function

现在,从每个表单调用这个函数(无论你需要在哪里运行 SQL 查询):

Dim A as String
A=GetFirstValueFromQuery(MyDatabase, "SELECT Employee.Salary FROM Employee WHERE Employee.UserName='"+uname+"'")
Msgbox "Salary="+A
于 2013-04-03T23:47:38.360 回答