Azure Synapse分析:访问外部表时出错

无法执行查询。错误:文件'https://track2gen2storage.blob.core.windows.net/ \ sourcedata \ sample.csv'无法打开,因为它不存在或被另一个进程使用。

我们执行了以下步骤:-

create database SalesdataDemo
use salesdataDemo
-----create master key
CREATE MASTER KEY ENCRYPTION BY PASSWORD = <Password>;
SELECT *
FROM sys.symmetric_keys AS SK
WHERE SK.name = '##MS_DatabaseMasterKey##';

CREATE DATABASE SCOPED CREDENTIAL ADL_User
WITH
IDENTITY = '<client_id>@<OAuth_2.0_Token_EndPoint>',Secret = <Key>

CREATE DATABASE SCOPED CREDENTIAL adls_credential
WITH IDENTITY ='SHARED accESS SIGNATURE',SECRET = <azure_storage_account_key>

CREATE EXTERNAL DATA SOURCE adlsdatasource
WITH
( LOCATION = 'https://track2gen2storage.blob.core.windows.net',CREDENTIAL = adls_credential
) ;

CREATE EXTERNAL FILE FORMAT adls_csv
WITH (
FORMAT_TYPE = DELIMITEDTEXT,FORMAT_OPTIONS ( FIELD_TERMINATOR = ',',STRING_DELIMITER = '"',FIRST_ROW = 2 )
);


CREATE EXTERNAL TABLE sampledata ( <ColumnName><Datatype>)
WITH (
LOCATION = '/sourcedata/sample.csv',DATA_SOURCE = adlsdatasource,FILE_FORMAT = adls_csv
)

select * from sampledata
hhhhj2006 回答:Azure Synapse分析:访问外部表时出错

我认为问题在于您的外部表位置以/开头。尝试将其更改为:

CREATE EXTERNAL TABLE sampledata ( <ColumnName><Datatype>)
WITH (
LOCATION = 'sourcedata/sample.csv',DATA_SOURCE = adlsdatasource,FILE_FORMAT = adls_csv
)

以下是文档,您也可以参考一下: https://docs.microsoft.com/en-us/azure/synapse-analytics/sql/create-use-external-tables

另一个问题,为什么您需要名为ADL_User的数据库范围凭证?

本文链接:https://www.f2er.com/2305597.html

大家都在问