由于某些奇怪的原因,我在执行批量插入时遇到问题。

BULK INSERT customer_stg
FROM 'C:\Users\Michael\workspace\pydb\data\andrew.out.txt'
WITH
(
    FIRSTROW=0,
    FIELDTERMINATOR='\t',
    ROWTERMINATOR='\n'
)
声明this后,我确信自己已经正确设置了用户角色,因为它说明了...

我已经正确设置了Windows身份验证的Login Properties(如下所示),以授予服务器范围的bulkadmin权限
sql-server - 无法批量加载。操作系统错误代码5(访问被拒绝。)-LMLPHP
(来源:iforce.co.nz)
并且命令EXEC sp_helpsrvrolemember 'bulkadmin'告诉我上面的信息已成功,并且当前用户Michael-PC\Michael具有bulkadmin权限。
sql-server - 无法批量加载。操作系统错误代码5(访问被拒绝。)-LMLPHP
(来源:iforce.co.nz)
但是,就我所知,即使我已正确设置了所有内容,但仍然会收到错误消息。直接从SQL Server Management Studio执行批量插入。

这没有意义,因为bulkadmins显然可以运行该语句,我的意思是重新配置bulkadmin的工作方式吗? (我很迷茫)。关于如何解决它的任何想法?

最佳答案

这是我解决此问题的方法非常简单:

  • 打开SQL Server
  • 右键单击数据库(要备份)
  • 选择属性
  • 选择权限
  • 选择您的数据库角色(本地或云)
  • 在您的底部,您将看到显式权限表
  • 找到“备份数据库”权限,然后单击“授予权限”。

  • 您的问题已解决。

    关于sql-server - 无法批量加载。操作系统错误代码5(访问被拒绝。),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14555262/

    10-13 07:08