首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MySQL运行时错误'-2147217865 (80040e37)‘

MySQL运行时错误'-2147217865 (80040e37)‘
EN

Stack Overflow用户
提问于 2016-11-17 16:11:18
回答 1查看 1.2K关注 0票数 0

Windows 7 (x64)、VB6.0 - SP6和MySQL 5.2 ODBC连接器和Xammp服务器

这在本地主机上正常工作,现在我正在尝试用相同的表连接远程MySQL数据库,但是成功连接后,它会给我运行时错误'-2147217865 (80040e37)‘,并说表MySQL不存在,但实际上它存在于我的数据库中。我在网上搜索了所有可能的解决方案,但它仍然对我没有用。

这里是我的连接字符串

代码语言:javascript
运行
复制
Option Explicit

Public Function Connected2DB() As Boolean
Dim isOpen      As Boolean
Dim ANS         As VbMsgBoxResult
Dim dbpath As String

    isOpen = False
    On Error GoTo err

    Do Until isOpen = True
      CN.CursorLocation = adUseClient
      CN.ConnectionString = "Provider=MSDASQL;Driver={MySQL ODBC 5.2 ANSI Driver};DSN=myDSN;Server=MyIPAddress;Database=myDatabase;Uid=DBUserName;Pwd=mypassword;Port=3306;"
      CN.Open
      isOpen = True
    Loop
    Connected2DB = isOpen
    Exit Function
err:
    ANS = MsgBox("Error Number: " & err.Number & vbCrLf & "Description: " & err.Description, _
  vbCritical + vbRetryCancel)
  If ANS = vbCancel Then
    Connected2DB = False
  ElseIf ANS = vbRetry Then
    Connected2DB = vbRetry
  End If
End Function

Public Sub CloseDB()
    'Close the connection
    CN.Close
    Set CN = Nothing
End Sub

这是我的密码

代码语言:javascript
运行
复制
Private Sub cmdLogin_Click()
Dim strPass As String

If txtUsername.Text = "" Then
    MsgBox "Username and/or Password is incorrect.Try Again!", vbExclamation
    txtUsername.SetFocus
    Exit Sub
End If

If txtPassword.Text = "" Then
    MsgBox "Username and/or Password is incorrect.Try Again!", vbExclamation
    txtPassword.SetFocus
    Exit Sub
End If

strPass = Encode(txtPassword.Text)
'strPass = txtPassword.Text

Set RS = New ADODB.Recordset
'If RS.State = adStateOpen Then RS.Close
RS.Open "SELECT tblUsers.* FROM tblUsers WHERE Username='" & txtUsername.Text & "' AND Password ='" & strPass & "' AND StatusCD ='ACTIVE'", CN, adOpenStatic, adLockReadOnly
If RS.RecordCount < 1 Then
    Attempt = Attempt - 1
    MsgBox "Username and/or Password is incorrect.Try Again!", vbExclamation
    lblAttempt.Caption = "Remaining Attempt(s): " & Attempt

    If Attempt = 0 Then
        MsgBox "You have reached maximum login attempts. System will now be terminated!", vbExclamation

        MDIMain.CloseMe = True
        END_APP = True
        Unload Me
    End If
Else
    LOGIN_SUCCEEDED = True

    ACTIVE_USER.USERID = RS.Fields("UserCD")
    ACTIVE_USER.FULLNAME = RS.Fields("Fullname")
    ACTIVE_USER.USERNAME = RS.Fields("Username")
    ACTIVE_USER.PASSCODE = RS.Fields("Password")
    ACTIVE_USER.USER_ISADMIN = CBool(changeYNValue(getValueAt("SELECT Username,IsAdmin FROM tblUsers WHERE Username='" & txtUsername.Text & "'", "IsAdmin")))

    blnCreate = CBool(changeYNValue(RS.Fields("ModCreate")))
    blnUpdate = CBool(changeYNValue(RS.Fields("ModUpdate")))
    blnDelete = CBool(changeYNValue(RS.Fields("ModDelete")))

    'InsertLogs Name, "Action Taken: Logged in to the Program", "Executed:" & Time

    MDIMain.lblCurrentUser.Caption = ACTIVE_USER.FULLNAME
    MDIMain.lblDate.Caption = Now() 'Format(Now, "MMMM dd, yyyy")

    Unload Me
    MDIMain.Show
End If
End Sub
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-10 07:58:28

远程服务器权限接受表名(区分大小写),然后在代码中对远程服务器上的表名进行双重检查。通过重命名所有相关表的MySQL语句来解决问题

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40659757

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档