LotusScript - 如何解决LS:DO错误720 - ODBC无法完成请求的操作
问题描述:
我正在使用LotusScript并尝试将我的遗留项目与MySQL集成。 我已经做了很多次与其他MySQL数据库,一切正常,直到现在。LotusScript - 如何解决LS:DO错误720 - ODBC无法完成请求的操作
使用MySQL-ODBC驱动程序v.5.3 MySQL ODBC Unicode驱动程序。 但在我的新任务中,我试图连接到另一个远程mysql数据库。 (我再次说,一切工作正常与其他数据库)
我的连接测试代码:
Dim mysqlConnection As New ODBCConnection
Dim sqlQuery As New ODBCQuery
Dim result As New ODBCResultSet
Dim selectAllQuery As String
Dim doc As NotesDocument
Dim session As New NotesSession
Dim generalDb As NotesDatabase
On Error Goto errblock
Set generalDb = session.CurrentDatabase
Call mysqlConnection.ConnectTo("Syncronization_agent","root","111111")
If Not mysqlConnection.IsConnected Then
Print "Connection is not working! Try again later!"
Exit Sub
Else
Print "Success connection to MySQL database - temp_data_db!"
End If
Set sqlQuery.Connection = mysqlConnection
Set result.Query = sqlQuery
selectAllQuery = "SELECT * FROM temp_data_db.temp_data_table WHERE id != ''"
sqlQuery.SQL = selectAllQuery
result.Execute
result.Close(DB_CLOSE)
mysqlConnection.Disconnect
errblock:
If Cstr(Err) Then
Print Cstr(Err) + " Message: " + Cstr(Error)
If result.GetError <> DBstsSuccess Then
result.Close(DB_CLOSE)
Messagebox result.GetErrorMessage + Chr(13) + result.GetExtendedErrorMessage
mysqlConnection.Disconnect
Exit Sub
End If
End If
我已经调试了这段代码,这个错误符合connectTo。
1.我已经检查了ODBC驱动程序的连接测试,并且它输出的数据库连接成功。
2.试图从MySQL Workbench运行SQL查询到这个数据库 - SELECT,INSERT,UPDATE正在工作。 (但在工作台,当我试图让数据库信息和得到这个错误(这也许可以创造一些问题或不..):
问题: 如何解决这个问题?是否有一些解决方案 为了这?或者有些想法?
答
我已经解决了这个问题!
问题不在访问或代码中!
当我在Windows系统中使用长名称创建ODBC连接时,会出现问题!
当我更改ODBC连接名称(在ODBC管理工具中)为更短 - 一切都开始正常工作。 p.s.我已尝试多次重命名此ODBC连接,并在名称很长时出现此错误。
答
对我来说,这看起来像一个权限问题。我会尝试修复所使用用户的权限 - 只要在MySql Workbench中浏览该用户的目录时,我确信该错误将消失。
我猜建立连接时会查询各种数据库属性,包括模式和目录信息,并且由于缺少权限而失败。