问题描述
我正在尝试在突触分析中创建外部表,但在创建外部数据源时遇到错误。
代码如下:
CREATE MASTER KEY ENCRYPTION BY PASSWORD='xxxxxxxxxxxx'; -- executed
CREATE DATABASE ScopED CREDENTIAL storageCred WITH -- executed
IDENTITY = 'SHARED ACCESS SIGNATURE',SECRET = 'xxxxxxxxxxxxxx';
CREATE EXTERNAL DATA SOURCE adls WITH -- execution Failed
( TYPE = HADOOP,LOCATION = 'abfss://staging@devedw2021.dfs.core.windows.net',CREDENTIAL = storageCred
)
解决方法
语法看起来适合外部数据源,但问题可能出在数据库范围的凭据上。我花了很多时间在这上面,唯一能让它起作用的方法是使用帐户名和密钥:
CREATE DATABASE SCOPED CREDENTIAL CausewayAdlsCredentials
WITH
IDENTITY = '<storage_account_name>',SECRET = '<storage_account_key>'
;
一个警告:小心文档。有几个不同的地方讨论这个问题,他们有冲突的消息或参考旧版本。 This one is OK,但只有 C 部分对我有用。