Sdílet prostřednictvím


CREATE CONNECTION

platí pro:označeno ano, Databricks SQL označeno ano, Databricks Runtime 13.3 LTS a vyšší, označeno ano pouze Unity Catalog.

Tento příkaz vytvoří cizí připojení (nebo server), který představuje vzdálený datový systém určitého typu, pomocí systémových specifických možností, které poskytují umístění vzdáleného systému a podrobnosti ověřování.

Cizí připojení umožňují federované dotazy.

Syntaxe

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

Pro dodržování standardů můžete také použít SERVER místo CONNECTION.

Parametry

  • connection_name

    Jedinečný identifikátor připojení na úrovni úložiště metadat katalogu Unity.

  • connection_type

    Určuje typ připojení a musí být jedním z následujících:

    • DATABRICKS
    • HTTP platí pro: Databricks SQL zaškrtněte políčko Ano Databricks Runtime 16.2 a vyšší
    • MYSQL
    • POSTGRESQL
    • REDSHIFT
    • SNOWFLAKE
    • SQLDW (Synapse)
    • SQLSERVER
  • OPTIONS

    Nastaví connection_type konkrétní parametry potřebné k navázání připojení.

    • možnost

      Klíč vlastnosti. Klíč se může skládat z jednoho nebo více identifikátorů oddělených tečkou nebo literálem STRING .

      Klíče vlastností musí být jedinečné a rozlišují se podle velikosti písmen.

    • hodnota

      Hodnota vlastnosti. Hodnota musí být výraz BOOLEAN, STRING, INTEGERnebo DECIMALkonstanta. Hodnota může být také voláním SECRET funkce SQL. Například value pro password může obsahovat secret('secrets.r.us', 'postgresPassword') na rozdíl od zadání přesného hesla.

Možnosti PROTOKOLU HTTP

platí pro: Databricks SQL zaškrtněte políčko Ano Databricks Runtime 16.2 a novější

Typ připojení HTTP podporuje následující klíče a hodnoty možností:

  • host

    Literál STRING . Určuje host_name pro externí službu. Pokud cesta hostitele není normalizovanou adresou URL, vyvolá se výjimka.

  • bearer_token

    Literál STRING nebo vyvolání funkce SECRET . Ověřovací token, který se má použít při volání externí služby. Například hodnota může obsahovat secret('secrets.r.us', 'httpPassword') místo doslovného hesla.

  • port volitelný INTEGER literál určující port. Výchozí hodnota je 443;

  • base_path

    Volitelný STRING literál. Výchozí hodnota je /. Výjimka se vyvolá, pokud cesta obsahuje prázdný řetězec nebo nesprávnou cestu s mezerami nebo speciálními znaky.

Příklad

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