我正在尝试将文件从我的Azure Blob存储导入到Azure托管实例中。
所以首先我创建了一个外部数据源
CREATE EXTERNAL DATA SOURCE MyAzureBlobStorage
WITH ( TYPE = BLOB_STORAGE,
LOCATION = 'https://abcd.blob.core.windows.net/testFolder/',
);
然后将我的csv文件上传到Blob存储
当我尝试查询csv文件时,
SELECT * FROM OPENROWSET(
BULK 'product.csv',
DATA_SOURCE = 'MyAzureBlobStorage',
SINGLE_CLOB) AS DataFile;
我知道了
消息4860,级别16,状态1,行99无法批量加载。文件 “ product.csv”不存在,或者您没有文件访问权限。
有人可以帮助我确定这里的问题吗?
答案 0 :(得分:1)
请验证共享访问签名的开始和到期日期和时间。将开始日期设置为上周的任意一天。确认“允许的IP地址”字段为空。
SAS(共享访问签名)是如下创建的字符串:
在示例脚本下面。
CREATE DATABASE SCOPED CREDENTIAL BlobCredential
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = 'sv=SAS_TOKEN_HERE';
CREATE EXTERNAL DATA SOURCE MyAzureBlobStorage
WITH ( TYPE = BLOB_STORAGE,
LOCATION = 'https://abcd.blob.core.windows.net/testFolder/',
CREDENTIAL = BlobCredential
);