Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Usar consultas parametrizadas

Modo de foco
Usar consultas parametrizadas - Amazon Athena

É possível utilizar consultas parametrizadas do Athena para repetir a execução da mesma consulta com valores de parâmetros diferentes no momento da execução e ajudar a evitar ataques de injeção de SQL. No Athena, consultas parametrizadas podem assumir a forma de parâmetros de execução em qualquer consulta DML ou instruções preparadas para SQL.

  • Consultas com parâmetros de execução podem ser feitas em uma única etapa e não são específicas para um grupo de trabalho. Coloque pontos de interrogação em qualquer consulta DML para os valores que você deseja parametrizar. Ao executar a consulta, declare os valores do parâmetro de execução sequencialmente. A declaração de parâmetros e a atribuição de valores para esses parâmetros podem ser feitas na mesma consulta, mas de maneira dissociada. Ao contrário de instruções preparadas, é possível selecionar o grupo de trabalho ao enviar uma consulta com parâmetros de execução.

  • Instruções preparadas exigem duas instruções SQL separadas: PREPARE e EXECUTE. Primeiro, você define os parâmetros na instrução PREPARE. Em seguida, executa uma instrução EXECUTE que fornece os valores dos parâmetros definidos. Instruções preparadas são específicas de um grupo de trabalho, ou seja, não podem ser executadas fora do contexto do grupo de trabalho ao qual pertencem.

Considerações e limitações

  • Há compatibilidade com consultas parametrizadas no mecanismo do Athena versão 2 e versões posteriores. Para obter informações sobre as versões do mecanismo do Athena, consulte Versionamento do mecanismo do Athena.

  • Atualmente, as consultas parametrizadas são aceitas apenas nas instruções SELECT, INSERT INTO, CTAS e UNLOAD.

  • Em consultas parametrizadas, parâmetros são posicionais e representados por?. Parâmetros recebem valores de acordo com sua ordem na consulta. Não há suporte para parâmetros nomeados.

  • No momento, parâmetros ? podem ser inseridos somente na cláusula WHERE. Não há suporte para a sintaxe do tipo SELECT ? FROM table.

  • Parâmetros de ponto de interrogação não podem ser inseridos entre aspas duplas ou simples (ou seja, '?' e "?" não são uma sintaxe válida).

  • Para que os parâmetros de execução do SQL sejam tratados como strings, eles devem estar entre aspas simples em vez de aspas duplas.

  • Se necessário, você pode usar a função CAST ao inserir um valor para um termo parametrizado. Por exemplo, se você tiver uma coluna do tipo date parametrizada em uma consulta e quiser consultar a data 2014-07-05, inserir CAST('2014-07-05' AS DATE) como valor do parâmetro retornará o resultado.

  • Instruções preparadas são específicas de um grupo de trabalho, e seus nomes devem ser exclusivos no grupo de trabalho.

  • São necessárias permissões do IAM para as instruções preparadas. Para ter mais informações, consulte Configurar o acesso a instruções preparadas.

  • Consultas com parâmetros de execução no console do Athena estão limitadas a um máximo de 25 pontos de interrogação.

Nesta página

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.