Aracılığıyla paylaş


CREATE CONNECTION

Şunlar için geçerlidir:evet ile işaretli Databricks SQL evet ile işaretli Databricks Runtime 13.3 LTS ve üzeri evet ile işaretli Yalnızca Unity Kataloğu

Bu komut, uzak sistemin konumunu ve kimlik doğrulama ayrıntılarını sağlayan sisteme özgü seçenekleri kullanarak belirli bir türdeki uzak veri sistemini temsil eden bir yabancı bağlantı (veya sunucu) oluşturur.

Yabancı bağlantılar federasyon sorgularını etkinleştirir.

Sözdizimi

CREATE CONNECTION [IF NOT EXISTS] connection_name
  TYPE connection_type
  OPTIONS ( option value [, ...] )
  [ COMMENT comment ]

Standartlara uyumluluk için yerine SERVERde kullanabilirsinizCONNECTION.

Parametreler

  • connection_name

    Unity Kataloğu meta veri deposu düzeyinde bağlantının benzersiz tanımlayıcısı.

  • connection_type

    Bağlantının türünü tanımlar ve aşağıdakilerden biri olmalıdır:

    • DATABRICKS
    • HTTP Şunlar için geçerlidir: Databricks SQL Databricks Runtime 16.2 ve üstü evet olarak işaretlendi
    • MYSQL
    • POSTGRESQL
    • REDSHIFT
    • SNOWFLAKE
    • SQLDW (Synapse)
    • SQLSERVER
  • OPTIONS

    Bağlantıyı kurmak için gereken belirli parametreleri ayarlar connection_type .

    • seçenek

      Özellik anahtarı. Anahtar, nokta ile ayrılmış bir veya daha fazla tanımlayıcı veya bir STRING literal değerden oluşabilir.

      Özellik anahtarları benzersiz olmalı ve büyük/küçük harfe duyarlı olmalıdır.

    • değer

      özelliğinin değeri. Değer bir BOOLEAN, STRING, INTEGERveya DECIMALsabit ifadesi olmalıdır. Değer, SQL işlevine SECRET yapılan bir çağrı da olabilir. Örneğin, value için password, değişmez parolanın girilmesinden farklı olarak secret('secrets.r.us', 'postgresPassword') oluşabilir.

HTTP seçenekleri

Şunlar için geçerlidir: Databricks SQL evet olarak işaretlendi Databricks Runtime 16.2 ve üzeri

HTTP bağlantı türü aşağıdaki seçenek anahtarlarını ve değerlerini destekler:

  • host

    Bir STRING sabit. Dış hizmet için host_name belirtir. Ana bilgisayar yolu normalleştirilmiş bir URL değilse bir istisna fırlatılır.

  • bearer_token

    STRING SECRET işlevinin değişmez değeri veya çağrıması. Dış hizmet çağrısı yapılırken kullanılacak kimlik doğrulama belirteci. Örneğin, değer kelime anlamıyla parolanın girilmesi yerine secret('secrets.r.us', 'httpPassword') içerebilir.

  • port Bağlantı noktasını belirten isteğe bağlı bir INTEGER sabit. Varsayılan değer 443;

  • base_path

    İsteğe bağlı STRING bir değişmez değer. Varsayılan değer: /. Yol boş bir dize içeriyorsa veya boşluklar ya da özel karakterler içeren yanlış bir yolsa, bir istisna fırlatılır.

Örnek

-- 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",
    )
  );