gpt4 book ai didi

azure - 如何排查 Azure Synapse Serverless SQL 池外部表查询引发 'location does not exist' 错误的问题?

转载 作者:行者123 更新时间:2023-12-03 03:23:07 24 4
gpt4 key购买 nike

当我在 Azure Synapse Server less SQL 池中创建和查询外部表时,它会引发以下错误:

外部表“EMP_DATA”无法访问,因为位置不存在或已被其他进程使用。

外部表已创建并且在界面中可见。但该表上的 select 语句失败。

我使用以下代码创建外部表并使用 select 语句查询它:

CREATE MASTER KEY ENCRYPTION BY PASSWORD='sdfuhfhfdshfshfidhfeyrt23r593u4-3rhnfhhfhfg';

CREATE DATABASE SCOPED CREDENTIAL MyCredentials
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = 'QLYMgmSXMklt%2FI1U6DcVrQixnlU5Sgbtk1qDRakUBGs%3D';

IF NOT EXISTS (SELECT * FROM sys.external_file_formats WHERE name = 'SynapseDelimitedTextFormat')
CREATE EXTERNAL FILE FORMAT [SynapseDelimitedTextFormat]
WITH (
FORMAT_TYPE = DELIMITEDTEXT ,
FORMAT_OPTIONS ( FIELD_TERMINATOR = ',', USE_TYPE_DEFAULT = FALSE )
)
GO

IF NOT EXISTS (SELECT * FROM sys.external_data_sources WHERE name = 'nycsynapseefs_nycsynapseedl_dfs')
CREATE EXTERNAL DATA SOURCE [nycsynapseefs_nycsynapseedl_dfs]
WITH (
LOCATION = 'abfss://<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="b5dbccd6c6ccdbd4c5c6d0d0d3c6f5dbccd6c6ccdbd4c5c6d0d0d1d99bd1d3c69bd6dac7d09bc2dcdbd1dac2c69bdbd0c1" rel="noreferrer noopener nofollow">[email protected]</a>',
CREDENTIAL = [MyCredentials]
)
GO

CREATE EXTERNAL TABLE [dbo].[EMP_DATA](
[EmployeeID] [varchar](10) NULL,
[LastName] [varchar](20) NULL,
[FirstName] [varchar](20) NULL)
WITH (
LOCATION = 'emp_data.csv',
DATA_SOURCE = [MyDataSource],
FILE_FORMAT = [SynapseDelimitedTextFormat]
)
GO

SELECT * FROM [dbo].[EMP_DATA]
GO

我尝试使用托管身份创建凭据,但它也不起作用。

最佳答案

是否可以在不使用外部表的情况下查询底层文件?您收到的错误代码通常是我在未向存储帐户上的个人授予“存储 Blob 数据贡献者”或“存储 Blob 数据读取者”访问权限时收到的错误代码。

关于azure - 如何排查 Azure Synapse Serverless SQL 池外部表查询引发 'location does not exist' 错误的问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76389109/

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