我做了一个QT程序,在网络驱动器上创建一个.csv文件,通过ODBC连接到MS SQL DB,然后执行一个BULK INSERT。问题是,当程序使用登录方式执行查询时,失败的原因是。
Microsoft][ODBC SQL Server Driver][SQL Server]Cannot bulk load because the file "\10.10.10.10\data\myCSV.csv" could not be opened. 操作系统错误代码58(指定的服务器不能执行请求的操作。)。
我需要能够从远程计算机运行这个程序,并为BULK INSERT语句指定一个网络路径。一定是有某种权限的问题。不 允许ODBC SQL SERVER登录访问网络UNC路径。这是什么?我错过了什么?我已经尝试过给网络路径赋予从每个人那里读取的权限,以及其他一系列的事情。
下面是我做的一些测试案例及其结果。
如果我在同一台机器上运行应用程序 使用 "TRUSTED_CONNECTION",不管文件在哪里,一切都能正常运行。
如果我在同一台机器上运行应用程序,使用登录和网络路径,就会出现上述错误。如果我使用本地路径(例如C:\),一切都能如期运行。
如果我远程运行该程序,我必须使用登录,程序就会出现上述错误。
明确给SQL Server服务下运行的AD账户访问共享的权限
"这是一个必要的步骤,让这个工作" 为了认证到不同的主机?完全正确。
感谢@Larnu的回答,这就解决了。