首页 文章

无法使用sqlcmd连接到Azure DB

提问于
浏览
2

我有一个Azure数据库,我可以使用Active Directory Integrated authenticationSql Server Management Studio(版本17.1)连接到该数据库 . 但是,当我尝试使用sqlcmd(版本13.1.811.168)进行连接时,通过:

sqlcmd -S my-dataabse.database.windows.net  -G -C -Q "SELECT name FROM master.dbo.sysdatabases"

我收到此错误:

Sqlcmd:错误:用于SQL Server的Microsoft ODBC驱动程序13:SQL Server网络接口:无法找到adalsql.dll文件路径的注册表项 . 验证是否已正确安装SQL Server的Active Directory身份验证库 . 有关详细信息,请参阅:http://go.microsoft.com/fwlink/?LinkID = 513072 .

如果我转到该链接,并下载最新版本的 adalsql.dll ,它会告诉我已经安装了它 . 此外,我可以确认 C:\Windows\System32\adalsql.dll 存在 .

不确定接下来要尝试什么...

1 回答

  • 0

    所以事实证明我的搜索路径上的第一个 sqlcmd.exe 是64位版本而Sql Server Management Studio只安装了32位版本的 adalsql.dll ,所以解决办法是将 C:\Program Files (x86)\Microsoft SQL Server\Client SDK\ODBC\130\Tools\Binn 添加到我的搜索路径的头部以便32位从命令行调用 sqlcmd blah blah blah 时将使用 sqlcmd.exe 的版本 .

相关问题