【发布时间】:2020-12-15 13:35:25
【问题描述】:
我已将单个文件 (BlockBlob) 上传到 Azure BlobStorage 中的容器
这是路径:https://myStorageName.blob.core.windows.net/myContainerName/myFolder.Name/myFileName.json
我想将此文件加载到 Azure Sql 数据库中的表中
如果我为该文件创建一个 SAS,则一切正常。但是,我无法生成可以访问容器内多个文件的单个 SAS。
这是有效的代码:
CREATE DATABASE SCOPED CREDENTIAL TemporaryBlobSCredential
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = 'sp=......................'
CREATE EXTERNAL DATA SOURCE TemporaryBlobDataSource
WITH ( TYPE = BLOB_STORAGE,
LOCATION = 'https://<myStorageName>.blob.core.windows.net/<myContainerName>',
CREDENTIAL= TemporaryBlobSCredential);
create table <tableName>
(JsonData varchar(max))
BULK INSERT <tableName>
FROM '<myFolder.Name>/<myFileName>.json'
WITH (DATA_SOURCE = 'TemporaryBlobDataSource');
如果我生成具有所有权限的 SAS (SECRET = '?sv=......'),它将无法工作:
我应该使用不同的东西吗? 它甚至有效吗?
【问题讨论】:
标签: azure azure-sql-database azure-blob-storage