Azure sql database 迁移到Azure时,BCP无法打开主机数据文件

Azure sql database 迁移到Azure时,BCP无法打开主机数据文件,azure-sql-database,bcp,Azure Sql Database,Bcp,我有一个试图加载到Azure的GTFS数据文件示例。我使用的命令是: bcp %fullTablePath% in %data_dir% -f %format_file% -S %server% -U %username% -P %password% -k -F %first_row% 其中相应地替换了参数 当我执行命令时,我得到: SQLState=S1000,NativeError=0 错误=[Microsoft][SQL Server本机客户端11.0]无法打开BCP主机数据文件 这不是

我有一个试图加载到Azure的GTFS数据文件示例。我使用的命令是:

bcp %fullTablePath% in %data_dir% -f %format_file% -S %server% -U %username% -P %password% -k -F %first_row%
其中相应地替换了参数

当我执行命令时,我得到:

SQLState=S1000,NativeError=0 错误=[Microsoft][SQL Server本机客户端11.0]无法打开BCP主机数据文件


这不是文件命名问题,因为文件确实存在。如果我故意拼写错误的文件,我会得到相同的错误。听起来像是权限问题,但我应该授予谁什么权限?

如果您在批处理文件中看到此错误,但不是从PowerShell中看到的,请检查您的 %fullTablePath%或%data\u dir%变量是完全限定路径/绝对路径,而不是相对路径,因为PowerShell和Batch可能具有不同的默认路径设置,这可能会导致以下错误:


无法打开BCP主机数据文件

您登录的用户的目标文件权限是什么?@JosephIdziorek,我假设这是针对SQL Azure上的用户的?如果是,是否有办法在Azure上执行此操作?从错误中可以看出,BCP似乎存在权限问题,因为它无法打开指定的文件。从被问到的类似问题中,您能否验证以下1。用于运行BCP的帐户没有写入目标文件夹的权限。2.路径或文件名正确。3.该文件尚未被其他文件打开。我已以管理员身份登录到笔记本电脑。BCP直接从PowerShell执行。我的登录用户对包含数据文件的文件夹具有读/写权限。我把它们放在那里了!正在对Azure进行导入,因此SQLServer安全上下文可能不适用于此处。不知道。缺少一些上下文。仅当我从批处理文件执行bcp时,才会发生此错误。如果直接从PowerShell执行bcp,则不会出现此问题。我正在打印变量%fullTablePath%和%data_dir%,它们是绝对路径。我怀疑这与BCP没有这些目录的读取权限有关。我有另一个权限问题,Python脚本读取同一目录中的文件。目录是c:\dev\tut\data\oc\u transp。尚未尝试,但我怀疑将文件放置在c:\users\knji\documents中会起作用。您能否共享代码以删除任何不必要的个人信息?