Inserir dados no SQL com Power Automate

Resumen

Automatizar a inserção de dados numa base de dados SQL com Power Automate permite centralizar informação vinda de APIs, ficheiros ou serviços externos como ChatGPT em tabelas estruturadas. Esta guia mostra como ligar o fluxo a um SQL Server, tratar caracteres especiais e executar a instrução de inserção sem erros, ideal para quem trabalha com automação de processos e rastreabilidade de dados.

Como ligar o Power Automate a uma base de dados SQL Server?

A ligação começa com a ação Open SQL connection, que cria a ponte entre o fluxo e o motor de base de dados. No exemplo, criámos uma secção chamada Inserção de dados e começámos por adicionar um comentário com a frase "Ligar à base de dados" para manter o código legível.

Depois, ao arrastar a ação Abrir ligação SQL, clica no ícone Criar cadeia de ligação. Aí seleciona o motor SQL Server, introduz o nome do servidor local (no caso, Andrés), escolhe Windows NT, autenticação integrada e seleciona a base de dados Correção de código DB [03:30].

¿Qué es uma cadeia de ligação? É uma string que guarda o servidor, autenticação e base de dados a usar. O Power Automate gera automaticamente uma variável chamada SQLConnection que será reutilizada nas ações seguintes.

Se ligares mais do que uma base de dados, renomeia a variável para identificar a instância correta.

Como tratar caracteres especiais antes de inserir no SQL?

Quando extraímos dados de APIs, é comum aparecerem saltos de linha, finais de linha ou aspas simples que partem a sintaxe SQL. Para evitar erros, fazemos duas substituições antes da inserção [05:40].

  • Substituir saltos de linha e finais de linha por um espaço, ativando expressões regulares na ação Replace text.
  • Substituir aspas simples por aspas duplas, desativando expressões regulares.
  • Repetir o processo para cada variável que vai entrar na consulta: segmento de código, resposta e mensagem de erro.

A sintaxe do espaço de substituição usa o símbolo de percentagem com aspas duplas a envolver o espaço, no formato típico das variáveis do Power Automate.

¿Por que substituir aspas simples por aspas duplas? Porque o SQL usa aspas simples para delimitar strings. Se o texto tiver uma aspa simples por dentro, a instrução parte e gera erro de sintaxe.

Como executar a instrução de inserção e fechar a ligação?

Com as variáveis limpas, adicionamos um comentário Inserir dados BD e arrastamos a ação Execute SQL statement [09:10]. Esta ação pede a variável SQLConnection gerada antes e o script de inserção, que segue a estrutura clássica com tabela, colunas e valores.

Dentro dos valores, cada variável vai entre aspas simples e é selecionada com duplo clique no painel lateral. O prefixo N antes da string indica tipo nvarchar, garantindo que aceita caracteres especiais e Unicode.

Para depurar, antes de executar a inserção podes adicionar a ação Display message com o título query e colar a mesma instrução SQL. Assim vês exatamente o que vai ser enviado ao servidor [11:20].

Boa prática para fechar a ligação

Depois de todas as instruções, fecha sempre a ligação com a ação Close SQL connection, indicando o nome da variável. Isto liberta recursos no servidor.

  • Abre a ligação uma só vez no início.
  • Executa todas as instruções necessárias.
  • Fecha a ligação no fim do bloco.

Como validar que os dados foram guardados corretamente?

Depois de executar o fluxo, copia a consulta gerada no Display message e cola no SQL Server Management Studio. Se o painel direito não acusar erros, a sintaxe está correta [13:40].

Para confirmar que os registos chegaram à tabela, executa um select sobre a tabela Solicitações da base Correção de código DB. Os campos devem refletir o que foi capturado do Excel, o prompt enviado ao ChatGPT e a resposta legível devolvida.

No fluxo do exemplo, a sequência completa foi:

  1. Captura de Excel.
  2. Construção do prompt.
  3. Invocação do serviço web do ChatGPT.
  4. Substituição de caracteres especiais.
  5. Inserção na base de dados e fecho da ligação.

Esta arquitetura serve para rastreabilidade: cada execução fica registada com a sua resposta e eventual mensagem de erro, o que permite auditar o histórico e otimizar prompts futuros.

Diz-me nos comentários como usarias esta informação guardada para otimizar recursos no teu próprio fluxo.