【发布时间】:2021-10-14 12:56:32
【问题描述】:
我正在尝试将 BLOB 容器中的 bulk_insert 插入 Azure SQL。
这是我的 StorageAccount:SanStore 容器:SanContainer
这是脚本
CREATE EXTERNAL DATA SOURCE MyAzureBlobStorage
WITH ( TYPE = BLOB_STORAGE,
LOCATION = 'https://sanstore.blob.core.windows.net/sancontainer'
);
BULK INSERT ado_workitem
FROM 'WorkItemsComplete_Till_august_10.csv'
WITH ( DATA_SOURCE = 'SanStore',
FIELDTERMINATOR=',',
ROWTERMINATOR='\n',
FIRSTROW=2,
BATCHSIZE=10000);
该文件已经在我验证的 blob 容器中。但是在执行命令时它会触发
Msg 4861, Level 16, State 1, Line 23
Cannot bulk load because the file "WorkItemsComplete_Till_august_10.csv" could not be opened. Operating system error code 161(The specified path is invalid.).
请注意,我正在本地管理工作室尝试此脚本,并使用身份验证登录 SQL 服务器。
我错过了另一点。文件大小约为 300MB。这有什么问题吗。我听说有人使用 1 GB 文件玩批量插入
【问题讨论】:
-
create external data source命令是否应该包含credential参数? ref -
我相信凭据仅支持 SAS 令牌。考虑到您的组织中禁止使用访问密钥,您可以尝试创建
user delegation SAS吗?
标签: sql-server azure-sql-database azure-blob-storage