Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: Databricks SQL
Databricks Runtime 13.3 LTS и более поздние версии
только для Unity Catalog
Внимание
Эта функция предоставляется в режиме общедоступной предварительной версии.
Эта команда создает внешнее подключение (или сервер), представляющее удаленную систему данных определенного типа, используя системные параметры, которые предоставляют расположение удаленной системы и сведения о проверке подлинности.
Внешние подключения обеспечивают федеративные запросы.
Синтаксис
CREATE CONNECTION [IF NOT EXISTS] connection_name
TYPE connection_type
OPTIONS ( option value [, ...] )
[ COMMENT comment ]
Для соответствия стандартам можно также использовать SERVER
вместо CONNECTION
.
Параметры
connection_name
Уникальный идентификатор подключения на уровне хранилища метаданных каталога Unity.
connection_type
Определяет тип подключения и должен быть одним из следующих элементов:
DATABRICKS
-
HTTP
применимо: Databricks SQLDatabricks Runtime 16.2 и выше
MYSQL
POSTGRESQL
REDSHIFT
SNOWFLAKE
-
SQLDW
(Synapse) SQLSERVER
OPTIONS
Задает
connection_type
определенные параметры, необходимые для установления подключения.Параметр
Ключ свойства. Ключ может состоять из одного или нескольких идентификаторов, разделенных точкой или
STRING
литералом.Ключи свойств должны быть уникальными и чувствительны к регистру.
значение
Значение для свойства. Значение должно быть константным выражением
BOOLEAN
,STRING
,INTEGER
илиDECIMAL
. Это значение также может быть вызовомSECRET
функции SQL. Например,value
дляpassword
может бытьsecret('secrets.r.us', 'postgresPassword')
, в отличие от вводa буквального пароля.
Параметры HTTP
Применимо: Databricks SQL Databricks Runtime 16.2 и более новые версии
Тип ПОДКЛЮЧЕНИЯ HTTP поддерживает следующие ключи и значения параметров:
host
Литерал
STRING
. Указываетhost_name
для внешнего сервиса. Исключение возникает, если путь к узлу не является нормализованным URL-адресом.bearer_token
Литерал
STRING
или вызов функции SECRET. Токен аутентификации, используемый для вызова внешней службы. Например, значение может содержатьsecret('secrets.r.us', 'httpPassword')
вместо ввода литерального пароля.port
необязательный литералINTEGER
, указывающий порт. Значение по умолчанию —443
;base_path
Необязательный литерал
STRING
. Значение по умолчанию —/
. Исключение возникает, если путь содержит пустую строку или неправильный путь с пробелами или специальными символами.
Пример
-- Create a postgresql connection
> CREATE CONNECTION postgresql_connection
TYPE POSTGRESQL
OPTIONS (
host 'qf-postgresql-demo.xxxxxx.us-west-2.rds.amazonaws.com',
port '5432',
user 'postgresql_user',
password 'password123');
-- Create a postgresql connection with secret scope
> CREATE CONNECTION postgresql_connection
TYPE POSTGRESQL
OPTIONS (
host 'qf-postgresql-demo.xxxxxx.us-west-2.rds.amazonaws.com',
port '5432',
user secret('secrets.r.us', 'postgresUser'),
password secret('secrets.r.us', 'postgresPassword'));
-- Set up a connect to Slack.
> CREATE CONNECTION slack_conn
TYPE HTTP
OPTIONS (
host 'https://slack.com',
port '443',
base_path '/api/',
bearer_token 'xoxb-xxxxx'
);
-- Request to the external service
> SELECT http_request(
conn => 'slack_conn',
method => 'POST',
path => '/chat.postMessage',
json => to_json(named_struct(
'channel', channel,
'text', text
))
headers => map(
'Accept', "application/vnd.github+json",
)
);