gpt4 book ai didi

c# - 无法批量加载。文件 "csv"不存在或您没有文件访问权限 - Azure

转载 作者:行者123 更新时间:2023-12-02 08:02:37 25 4
gpt4 key购买 nike

我正在尝试将文件从 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;

我得到了,

Msg 4860, Level 16, State 1, Line 99 Cannot bulk load. The file "product.csv" does not exist or you don't have file access rights.

有人可以帮我找出问题所在吗?

最佳答案

请验证共享访问签名的开始和到期日期和时间。将开始日期设置为上周的任意一天。验证“允许的 IP 地址”字段为空。

SAS(共享访问签名)是一个按如下方式创建的字符串:

  1. 在 Azure 门户中,转到您的存储帐户
  2. 按共享访问签名
  3. 填写字段(确保您的开始日期是几天前,并且可以将允许的 IP 地址留空)
  4. 按“生成 SAS”
  5. 复制 SAS token 字段中的字符串
  6. 删除前导 ?在将其粘贴到 SQL 脚本之前

位于示例脚本下方。

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
);

关于c# - 无法批量加载。文件 "csv"不存在或您没有文件访问权限 - Azure,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52703542/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com