由NotesSQL到Notes 9的ODBC连接导致IM005(0)[Microsoft] [ODBC驱动程序管理器] SQL_HANDLE_DBC上驱动程序的SQLAllocHandle失败

时间:2019-01-17 17:54:59

标签: sql odbc lotus-notes lotus-domino lotus

我用来初始化与IBM Notes 9 DB建立的ODBC连接的每个应用程序都会导致在连接期间出错:

  

驱动程序在SQL_HANDLE_DBC上的SQLAllocHandle失败

我在网上搜索了此问题以尝试纠正此问题,但无法在我的机器上找到解决该问题的答案。我可以在Notes 9软件中打开和访问Lotus Notes数据库。我能够创建ODBC系统DSN,并且我知道它已正确连接到服务器,因为在进行以下操作时,所有可用的.nsf文件都会填充在“ 数据库:”下拉菜单中新的ODBC连接设置。我可以看到我的用户名,该用户名是从我的Notes ID文件填充的。当我使用某些东西来启动ODBC连接时,会发生此问题。我已经尝试了Excel,QlikView,AQT,Teradata SQL Assistant都具有相同的结果。一旦选择了我创建的ODBC连接,并在尝试使用的每个应用程序中单击“确定”,就会遇到上述相同错误。

我在较早的在线帖子中根据建议使用了 Event Viewer ,并收到了以下消息:

  

无法加载NSQLE32.EXE。此文件必须存在于同一目录NSQL32.DLL和NSQLV32.DLL中。由于NotesSQL找不到有效的Notes / Domino安装(找不到NNOTES.DLL),可能无法加载NSQLE32.EXE- -这可能是因为用户(MYUSERID)对Notes / Domino目录没有正确的权限。也可能是因为NotesSQL在注册表中找不到您的Notes / Domino安装。 NotesSQL通过在以下注册表项指向的路径中查找NNOTES.DLL文件-HKEY_LOCAL_MACHINE \ Software \ Lotus \ Notes {version} \ Path:HKEY_LOCAL_MACHINE \ Software \ Lotus \ Domino {version} \ Path。如果这些注册表项都不存在,或者它们指向Notes / Domino的无效版本,则NotesSQL将不起作用。要解决-请重新安装Notes / Domino。

一些笔记(无双关语)和我做过的事情:

  • 确认事件查看器中提到的DLL确实存在于正确的目录中。

  • 运行Nsql_ALM.exe应用程序以配置NotesSQL驱动程序。

  • 使用32位 ODBC管理员,因为我的Notes 9是32位以及驱动程序。 64位驱动程序甚至不允许安装(达到此障碍后尝试安装),但32位驱动程序已成功安装。

  • Path修改了我的系统环境变量,以将notes.ini的真实位置包括在以下位置:

    • C:\Users\MYUSERID\AppData\Local\Lotus\Notes\Data
  • 修改了我的“路径”的系统环境变量,以包括NotesSQL驱动程序的位置,该位置位于:

    • C:\NotesSQL
  • 修改了我的注册表,以确保存在适当的字符串来引用适当的文件:

    • HKEY_CURRENT_USER\Software\Lotus\Notes\NotesIniPath(至notes.ini

    • HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Notes\9.0\Path(用于 notes 应用程序)

    • HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Notes\9.0\DataPath(至notes.ini

    • HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Domino\9.0\Path(用于 notes 应用程序)

    • HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Domino\9.0\DataPath(至notes.ini

  • NSQLE32.exe应用程序设置为与所有其他选项兼容运行。

  • 尝试一切以管理员身份运行。

  • 同时卸载了 Notes NotesSQL ,并再次干净地重新安装了所有内容。

  • 在ODBC Administrator中通过跟踪尝试了日志,并且在尝试连接时不会创建日志文件。但是,当调用应用程序尝试在下拉菜单中查找要填充的现有连接时,它将使用所有系统ODBC连接进行填充。如果在填充下拉菜单之后开始跟踪,然后尝试进行ODBC连接,甚至多次并具有多个版本,则永远不会创建新的日志文件。

我不确定从这里去哪里。有人遇到过这个问题吗,还有什么我可以解决的吗?

1 个答案:

答案 0 :(得分:0)

我能够根据事件日志(Windows-应用程序)中的信息指示无法找到Notes.INI文件来更正此问题。我首先将notes.ini的位置添加到用户和系统环境变量中,但是问题仍然存在。然后,我将notes.ini移至c:\ NotesSQL文件夹,在该文件夹中找到数据库连接dll,例如NSQL32.dll。这样可以解决问题。

应用程序调用记录为SAP BusinessObjects Edge(企业-Crystal Reports)4.2 SP07。

notes.ini can not be found - Windows application event log

相关问题