北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |
最近在学习红尘大师的通用登录及权限管理系统,
有个问题老搞不明白,请教一下.
我把TABLE: usysUsers, usysUse_Sub, usysRights转到SQL SERVER上,
用ODBC 连上運行...新用户注册时出现错误,但如果TABLE 在ACCESS 里面正常的.
以下這段出錯了.
运行时错误’3134’
INSERT INTO 语句的语法错误
strSQL = "INSERT INTO usysRights ( FFormID, FUserID ) SELECT FFormID, " & Me![FUserID] & " FROM usysForms"
CurrentDb.Execute strSQL
如何解决呢? 把TABLE 放回ACCESS 里馬上正常了..
Private Sub cmdOk_Click()
Dim strSQL As String
If Nz(Me.txtUserName) = "" Then
MsgBox "请胔?用户!", vbCritical, ""
Me.txtUserName.SetFocus
Exit Sub
End If
If Nz(Me.txtPassword) = "" Then
MsgBox "请胔?密码!", vbCritical, ""
Me.txtPassword.SetFocus
Exit Sub
End If
If Len(Me.txtPassword) < 6 Then
MsgBox "密码不能少於6位!", vbCritical, ""
Me.txtPassword.SetFocus
Exit Sub
End If
If Nz(Me.txtConfirmPwd) = "" Then
MsgBox "请胔?确认密码!", vbCritical, ""
Me.txtConfirmPwd.SetFocus
Exit Sub
End If
If Me.txtPassword <> Me.txtConfirmPwd Then
MsgBox "两次胔?的密码不符,请重新胔?!", vbCritical, ""
Me.txtPassword = ""
Me.txtConfirmPwd = ""
Me.txtPassword.SetFocus
Exit Sub
End If
If Nz(Me.cboPwdprompt) <> "" And Nz(Me.txtPromptAnswer) = "" Then
MsgBox "提示答案不能为空!", vbCritical, ""
Me.txtPromptAnswer.SetFocus
Exit Sub
End If
'将注册内?保存表用户表
If NewRecord = False Then DoCmd.RunCommand acCmdRecordsGoToNew
Me![FUserName] = Me.txtUserName
Me![FPassword] = RC4(Me.txtPassword) '密码加密后瞉保存
If Nz(Me.cboPwdprompt) <> "" Then Me![FPwdPrompt] = Me.cboPwdprompt
If Nz(Me.txtPromptAnswer) <> "" Then Me![FPromptAnswer] = RC4(Me.txtPromptAnswer)
DoCmd.Save
'加注册用户?限信息,所有窗伐?限都被设为默?值0(不许使用)
strSQL = "INSERT INTO usysRights ( FFormID, FUserID ) SELECT FFormID, " & Me![FUserID] & " FROM usysForms"
CurrentDb.Execute strSQL
If Err = 0 Then
MsgBox "注?成功!" & vbCrLf & "目前您??使用本系统中功能,请等待系统管理?批核!", vbInformation, ""
If FormIsLoaded("frmEntry") = True Then Forms("frmEntry")!cboUserName.Requery
DoCmd.Close
End If
End Sub