SQL Server2000下有一数据库,其中有一个表是存放用户信息的,当调用程序时怎样做到对登录用户身份的验证?

解决方案 »

  1.   

    比较简单但是完整的示例Public Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As LongType UserInfo        '登录用户信息自定义变量
        UserID      As String
        UserName    As String
        UserJob     As String
    End Type
    Public LovelyUser   As UserInfo '记录登录用户名的信息,用于显示和验证权限
    '***************************************************************************************
    '功  能:   获取登录用户信息
    '编写人:   
    '参  数:
    '返回值:   自定义用户变量,存储用户信息
    '***************************************************************************************
    Function GetUser() As UserInfo
        Dim usr As String
        Dim aa As String
        Dim Temp As String
        Dim AdoRs As New ADODB.Recordset
        Dim strSQl As String
        
        '获得登录域用户名
        usr = Space(256)
        aa = GetUserName(usr, 256)
        Temp = Left(RTrim(usr), Len(RTrim(usr)) - 1)
        
        '获得权限表中信息
        strSQl = "select * from persons where UserID='" & Temp & "'"
        AdoRs.Open strSQl, gadoConn, adOpenKeyset, adLockReadOnly
        If Not AdoRs.EOF And Not AdoRs.BOF Then
            GetUser.UserID = Trim(Temp)
            GetUser.UserName = Trim(AdoRs!UserName)
            GetUser.UserJob = Trim(AdoRs!UserJob)
        Else
            MsgBox "您没有使用此系统的权限!", vbOKOnly, "警告!"
            GetUser.UserID = Temp
            GetUser.UserName = "NoRight"
            Exit Function
        End If
    End Function
      

  2.   

    能不能给一个公共的数据操作函数,用以执行各种SQL语句。
      

  3.   

    全局数据库连接对象就可以执行各种SQL语句
    gadoConn.Excute sql不知你想实现什么功能
      

  4.   

    yoki(小马哥) ,呵呵
    我都看见你回答几次了!!
    不过问问题总是好的!
    呵呵