为什么 DBI ODBC 连接告诉我尚未调用 CoInitialize?

Why does a DBI ODBC connection tell me CoInitialize has not been called?

我正在连接到 Azure SQL 盒子,几个月来都没有问题。今天,我收到此错误:

Error: nanodbc/nanodbc.cpp:983: FA004: [Microsoft][ODBC Driver 17 for SQL Server][SQL Server][Failed to authenticate user '' in Active Directory (Auth option is 'Active Directory Integrated')
Error code 0x800401F0; state 10
CoInitialize has not been called.

错误代码似乎与 Windows 中的 COM 有关。

我想我要问的是:这个错误是源于 R 中的问题,还是源于 Azure 中的权限问题?

对于那些偶然发现这个问题的人,我需要更新基础 R 并安装必要的包 (DBI)。这似乎修复了错误。

编辑:卸载并重新安装 DBI 包(版本 1.1.0)使其再次运行。


我自己仍在与完全相同的错误消息作斗争,使用 Azure Active Directory 集成身份验证连接到 Azure Sql 服务器。 运行 Windows 10.

遇到与 OP 相同的错误,升级驱动程序和库,重新启动。几个小时后它确实起作用了,现在又回到了同样的错误。我可以连接 SSMS。我可以在 ODBC 中执行 "Test Connection" 并且它有效。

它工作了一段时间的事实真的让我很困惑,就像某处超时了一样?

SQL 服务器的 ODBC 驱动程序 17,版本 2017.174.02.0 R(基础):3.6.2 odbc:1.2.2 DBI:1.1.0

非常感谢任何关于寻找或尝试的想法!

p.s。不确定最佳做法是创建新问题还是添加到此。由于我的错误消息是相同的,所以我也不想创建副本:-/