СОЗДАТЬ ВНЕШНИЙ ИСТОЧНИК ДАННЫХ из SS2019 CTP2.2 не работает
Итак... У меня есть 2 экземпляра SQL Server 2019 (CTP2.2), и у меня есть один экземпляр, установленный с Polybase в конфигурации с одним узлом (это называется SS-A). Я создал MASTER KEY в мастере SS-A и создал базу данных SCOPED CREDENTIAL в базе данных на SS-A. Когда я пытаюсь сделать следующее:
CREATE EXTERNAL DATA SOURCE acmeAzureDB WITH
(TYPE = RDBMS,
LOCATION = 'ss2019azure.database.windows.net',
DATABASE_NAME = 'dbAcmeAzure',
CREDENTIAL = acmeAzureCred
);
Я получаю ошибку
Сообщение 102, Уровень 15, Состояние 1, Строка 6
Неверный синтаксис рядом с 'RDBMS'
Я пытался работать с MS SQL Server SME без какой-либо удачи (работал над этим в течение многих недель безрезультатно). Любые идеи здесь - плюс сообщение для Microsoft - ваши документы об этом ужасны!
2 ответа
У вас есть 2 экземпляра SQL Server 2019 (CTP2.2). Но они не являются экземпляром базы данных SQL Azure.
Внешние источники данных СУБД в настоящее время поддерживаются только в базе данных SQL Azure.
-- Elastic Database query only: a remote database on Azure SQL Database as data source
-- (only on Azure SQL Database)
CREATE EXTERNAL DATA SOURCE data_source_name
WITH (
TYPE = RDBMS,
LOCATION = '<server_name>.database.windows.net',
DATABASE_NAME = '<Remote_Database_Name>',
CREDENTIAL = <SQL_Credential>
)
Другой способ - создать связанный сервер для своего экземпляра SQL Server 2019 в базе данных SQL Azure. Затем вы можете запросить данные из базы данных SQL Azure как EXTERNAL DATA SOURCE
,
Чтобы увидеть этот официальный учебник: Как создать связанный сервер.
Ссылочный объект: неверный синтаксис рядом с RDBMS. Когда я пытаюсь создать внешний источник данных, у кого-то есть такая же проблема?
Надеюсь это поможет.
Так что - сегодня работал с MS - и успешно - вы можете создать CREATE EXTERNAL DATA SOURCE в SS2019 и указать AZURE SQL - вот TSQL, который я использовал:
(МАСТЕР КЛЮЧ УЖЕ СОЗДАН)
CREATE DATABASE SCOPED CREDENTIAL acmeCred WITH IDENTITY = 'remoteAdmin', SECRET ='XXXXXXXXX';
go
CREATE EXTERNAL DATA SOURCE AzureDB
WITH (
LOCATION = 'sqlserver://ss2019azure.database.windows.net',
CREDENTIAL = acmeCred
);
go
CREATE EXTERNAL TABLE [dbo].[tblAcmeDataAzure]
(
ID varchar(10)
)
WITH (
LOCATION='dbAcmeAzure.dbo.tblAcmeDataAzure',
DATA_SOURCE=AzureDB
);
go