CREATE LISTING

Crie um listagem grátis para compartilhar diretamente com consumidores específicos.

Consulte também:

ALTER LISTING, DESCRIBE LISTING, SHOW LISTINGS, DROP LISTING, Listagem de referência de manifesto

Sintaxe

CREATE EXTERNAL LISTING [ IF NOT EXISTS ] <name>
  [ { SHARE <share_name>  |  APPLICATION PACKAGE <package_name> } ]
  AS '<yaml_manifest_string>'
  [ PUBLISH = { TRUE | FALSE } ]
  [ REVIEW = { TRUE | FALSE } ]
  [ COMMENT = '<string>' ]
Copy

Parâmetros

name

Especifica o identificador (ou seja, o nome) da listagem. Ele deve estar em conformidade com o seguinte:

  • Deve ser único em uma organização, independentemente da Snowflake Region em que a conta está localizada.

  • Deve começar com um caractere alfabético e não pode conter espaços ou caracteres especiais, exceto sublinhados (_).

AS 'yaml_manifest_string'

Especifica o manifesto no formato YAML para a listagem. Consulte Listagem de referência de manifesto para obter detalhes e exemplos de arquivos de manifesto de listagem.

Os manifestos normalmente são fornecidos como cadeias de caracteres entre aspas de cifrão. Para obter mais informações, consulte Constantes de cadeias de caracteres entre aspas de cifrão.

SHARE share_name

Especifica o identificador do compartilhamento a ser anexado à listagem.

APPLICATION PACKAGE package_name

Especifica o pacote do aplicativo anexado à listagem.

Consulte também SHOW APPLICATION PACKAGES.

PUBLISH = { TRUE | FALSE }

Especifica como a listagem deve ser publicada.

Se TRUE, a listagem é publicada imediatamente na listagem do Marketplace Ops para revisão.

Padrão: TRUE.

REVIEW =  { TRUE | FALSE }

Especifica se a listagem deve ou não ser enviada para revisão no Marketplace Ops.

Padrão: TRUE.

COMMENT = 'string_literal'

Especifica um comentário para o listagem.

Padrão: sem valor

Diferentes combinações de valores para as propriedades PUBLISH e REVIEW resultam nos seguintes comportamentos:

PUBLISH

REVIEW

Comportamento

TRUE

TRUE

Solicite uma revisão e publique imediatamente após a revisão.

TRUE

FALSE

Resulta em um erro. Você não pode publicar uma listagem no Snowflake Marketplace sem revisão.

FALSE

TRUE

Solicite uma revisão sem publicar automaticamente após a revisão.

FALSE

FALSE

Salve sua listagem como rascunho sem solicitar revisão ou publicação.

Requisitos de controle de acesso

Uma função usada para executar este comando SQL deve ter no mínimo os seguintes privilégios:

Privilégio

Objeto

Notas

CREATE DATA EXCHANGE LISTING

Conta

Only the ACCOUNTADMIN role has this privilege by default. The privilege can be granted to additional roles as needed.

Privilégios delegados para configurar o preenchimento automático entre nuvens.

Se o comando ALTER estiver modificando o conteúdo do manifesto para preenchimento automático

Consulte Como permitir que as contas configurem o preenchimento automático entre nuvens.

Observe que operar em qualquer objeto de um esquema também requer o privilégio USAGE no banco de dados e esquema principais.

Uma função usada para executar este comando SQL deve ter no mínimo os seguintes privilégios:

Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte a criação de funções personalizadas.

Para informações gerais sobre concessões de funções e privilégios para executar ações SQL em objetos protegíveis, consulte Visão geral do controle de acesso.

Notas de uso

  • Listagens criadas usando CREATE LISTING … são publicadas automaticamente. Consulte ALTER LISTING para obter informações sobre operações de publicação e cancelamento de publicação.

Exemplos

Crie uma listagem com o nome “MYLISTING”, com o manifesto especificado e envie para revisão e posterior publicação.

Para obter exemplos adicionais e casos de uso associados ao gerenciamento de listagens usando SQL, consulte Gerenciamento de listagens com SQL como um provedor – Exemplos.

Nota

Este exemplo usa os valores padrão para PUBLISH e REVIEW.

CREATE EXTERNAL LISTING MYLISTING
SHARE MySHARE AS
$$
title: "MyListing"
subtitle: "Subtitle for MyListing"
description: "Description for MyListing"
listing_terms:
   type: "STANDARD"
targets:
    accounts: ["Org1.Account1"]
usage_examples:
    - title: "this is a test sql"
      description: "Simple example"
      query: "select *"
$$
;
Copy

Crie uma listagem com o nome “MYLISTING”, com o manifesto especificado como rascunho.

CREATE EXTERNAL LISTING MYLISTING
SHARE MySHARE AS
$$
title: "MyListing"
subtitle: "Subtitle for MyListing"
description: "Description for MyListing"
listing_terms:
  type: "OFFLINE"
targets:
   regions: ["PUBLIC.AWS_US_EAST_1", "PUBLIC.AZURE_WESTUS2"]
usage_examples:
   - title: "this is a test sql"
     description: "Simple example"
     query: "select *"
$$ PUBLISH=FALSE REVIEW=FALSE;
Copy