我的访问数据库有一个用户日志;但是,如果系统崩溃,则无法正确记录用户注销。因此,我尝试创建代码以检查用户是否在创建记录之前列为已登录。
这是我的代码:
Function LogOn()
Dim sUser As String
Dim sSQL As String
DoCmd.SetWarnings False
sUser = Environ("username")
sSQL = "INSERT INTO tblUserLog ( UserID )" _
& "SELECT '" & sUser & "' AS [User] & WHERE tblUserLog.UserID='" & sUser & "' AND tblUserLog.LogOn Is Null & From tblUserLog;"
DoCmd.RunSQL sSQL
DoCmd.SetWarnings True
End Function
我收到
的错误消息"必须至少有一个目的地表"。
如果删除WHERE语句,我不会收到错误消息。
感谢您的帮助。 索林
答案 0 :(得分:0)
FROM
子句置于错误的位置。尝试更新查询
sSQL = "INSERT INTO tblUserLog ( UserID )" _
& "SELECT '" & sUser & "' AS [User] From tblUserLog WHERE tblUserLog.UserID='" & sUser & "' AND tblUserLog.LogOn Is Null ;"
-----------------^