ALTER LISTING¶
Modifica as propriedades de uma listagem com um manifesto YAML em linha ou de um arquivo localizado em um local de estágio.
- Consulte também:
CREATE LISTING, DESCRIBE LISTING, SHOW LISTINGS, SHOW VERSIONS IN LISTING, DROP LISTING
Sintaxe¶
ALTER LISTING [ IF EXISTS ] <name> [ { PUBLISH | UNPUBLISH | REVIEW } ]
ALTER LISTING [ IF EXISTS ] <name> AS '<yaml_manifest_string>'
[ PUBLISH={ TRUE | FALSE } ]
[ REVIEW= { TRUE | FALSE } ]
[ COMMENT = '<string>' ]
ALTER LISTING <name> ADD VERSION [ [ IF NOT EXISTS ] <version_name> ]
FROM <yaml_manifest_stage_location>
[ COMMENT = '<string>' ]
ALTER LISTING [ IF EXISTS ] <name> RENAME TO <new_name>;
ALTER LISTING [ IF EXISTS ] <name> SET COMMENT = '<string>'
Parâmetros¶
name
Especifica o identificador (nome) da listagem que está sendo alterada.
{ PUBLISH | UNPUBLISH | REVIEW }
A ação a ser executada na listagem:
PUBLISH
Transforma uma listagem que não pode ser descoberta em uma listagem que pode ser descoberta.Especificar PUBLISH em uma listagem publicada anteriormente não tem efeito.
UNPUBLISH
Transforma uma listagem que pode ser descoberta em uma listagem que não pode ser descoberta por novos consumidores. Os consumidores existentes podem continuar acessando os dados associados a uma listagem não publicada.Especificar UNPUBLISH em uma listagem não publicada anteriormente não tem efeito.
Consulte também Cancelamento da publicação de uma listagem.
REVIEW
Envia a listagem para revisão.
yaml_manifest_string
O manifesto YAML para a listagem. Para conhecer os parâmetros do manifesto, consulte Listagem de referência de manifesto.
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 cifrões.
ADD VERSION version_name
Especifica o identificador de versão exclusivo para a versão que está sendo adicionada. Se o identificador contiver espaços, caracteres especiais ou caracteres com letras maiúsculas e minúsculas, o identificador inteiro deverá ser colocado entre aspas duplas. Identificadores entre aspas duplas também diferenciam maiúsculas de minúsculas. Para obter informações sobre a sintaxe do identificador, consulte Requisitos para identificadores.
FROM 'yaml_manifest_stage_location'
Especifica o caminho para o arquivo manifest.yml do clone do repositório Git interno ou do Snowflake. Se as alterações exigirem a revisão do Marketplace Ops, use as operações REVIEW e PUBLISH.
RENAME TO new_name
Altera o nome da listagem para
new_name
. Os nomes de listagem devem ser exclusivos. O novo identificador não pode ser usado se o identificador já estiver em uso para uma listagem diferente.
SET ...
Especifica uma (ou mais) propriedades a serem definidas para a listagem (separadas por espaços em branco, vírgulas ou novas linhas).
COMMENT = 'string_literal'
Adiciona um comentário ou substitui o comentário existente de uma listagem existente.
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.
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. |
Notas de uso¶
As listagens podem ser renomeadas somente no estado DRAFT.
Ao definir a versão ativa do manifesto do formato YAML para uma listagem, você deve usar
COMMIT
para aplicar as alterações ouABORT
para descartar as alterações.
Requisitos de controle de acesso¶
A função usada para executar essa operação deve ter, no mínimo, os seguintes privilégios:
Privilégio |
Objeto |
Notas |
---|---|---|
OWNERSHIP ou MODIFY |
Sobre a listagem sendo modificada. |
Se estiver usando o comando ALTER para modificar o conteúdo do manifesto para o preenchimento automático, você deverá usar uma função com os privilégios delegados necessários para configurar o preenchimento automático entre nuvens. Consulte Delegar privilégios para configurar o preenchimento automático.
O privilégio USAGE no banco de dados e no esquema pai é necessário para executar operações em qualquer objeto de um esquema.
Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.
Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.
Exemplos¶
Altera a listagem MYLISTING para usar um arquivo de manifesto atualizado:
ALTER LISTING MYLISTING AS $$ title: "MyListing" subtitle: "Subtitle for MyListing" description: "Description or MyListing" listing_terms: type: "STANDARD" targets: accounts: ["Org1.Account1"] usage_examples: - title: "this is a test sql" description: "Simple example" query: "select *" $$
Envia a listagem MYLISTING para análise:
ALTER LISTING MYLISTING REVIEW;
Altera a listagem MYLISTING ao publicá-la:
ALTER LISTING MYLISTING PUBLISH;
Altera a listagem MYLISTING ao cancelar sua publicação:
ALTER LISTING MYLISTING UNPUBLISH;
Altera a listagem MYLISTING ao definir um novo comentário:
ALTER LISTING MYLISTING SET COMMENT = 'My listing is ready!';
Adiciona uma nova versão do local de estágio do arquivo de manifesto YAML especificado:
ALTER LISTING MYLISTING ADD VERSION V3 FROM @dbforstage.public.listingstage/listingmanifests;