Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: Aplicativos Lógicos do Azure (Consumo + Standard)
Este guia mostra como acessar o banco de dados SQL de um fluxo de trabalho nos Aplicativos Lógicos do Azure usando o conector do SQL Server. Em seguida, você pode criar fluxos de trabalho automatizados que são executados quando disparados por eventos no banco de dados SQL ou em outros sistemas e executar ações para gerenciar seus dados e recursos do SQL.
Por exemplo, seu fluxo de trabalho pode executar ações que obtêm, inserem e excluem dados ou que podem executar SQL consultas e procedimentos armazenados. Seu fluxo de trabalho pode verificar se há novos registros em um banco de dados não SQL, fazer algum trabalho de processamento, usar os resultados para criar registros em seu banco de dados SQL e enviar alertas de email sobre os novos registros.
Se você não estiver familiarizado com os Aplicativos Lógicos do Azure, confira os seguintes artigos para começar:
- O que são Aplicativos Lógicos do Azure?
- Início Rápido: Criar um exemplo de fluxo de trabalho de aplicativo lógico de consumo usando o portal do Azure
- Criar um exemplo de fluxo de trabalho do aplicativo lógico Standard usando o portal do Azure
Edições do SQL com suporte
O conector do SQL Server dá suporte às seguintes edições SQL:
Referência técnica do conector
O conector do SQL Server tem versões diferentes com base no tipo de aplicativo lógico e no ambiente do host.
| Aplicativo lógico | Ambiente | Versão do conector |
|---|---|---|
| Consumo | Aplicativos Lógicos Multilocatários do Azure | Conector gerenciado, que é exibido na galeria de conectores sob Compartilhado. Para saber mais, consulte a seguinte documentação: - Referência de conector gerenciado do SQL Server - Conectores gerenciados em Aplicativos Lógicos do Azure |
| Standard | Aplicativos Lógicos do Azure de locatário único e Ambiente do Serviço de Aplicativo v3 (somente planos Windows) | Conector gerenciado, que aparece na galeria e conectores em Compartilhado e conector interno, que aparece na galeria de conectores em Interno e é baseado no provedor de serviços. O conector interno é diferente das seguintes maneiras: – O conector interno pode se conectar diretamente a um banco de dados SQL e acessar redes virtuais do Azure usando uma cadeia de conexão sem um gateway de dados local. Para saber mais, consulte a seguinte documentação: - Referência de conector gerenciado do SQL Server - Referência do conector interno do SQL Server - Conectores internos em Aplicativos Lógicos do Azure |
Limitações
Para obter mais informações, examine a referência do conector gerenciado do SQL Server ou a referência do conector interno do SQL Server.
Pré-requisitos
Uma conta e uma assinatura do Azure. Se você não tem uma assinatura, inscreva-se em uma conta gratuita do Azure.
Banco de dados do SQL Server, Banco de Dados SQL do Azure ou Instância Gerenciada de SQL.
O conector do SQL Server requer que suas tabelas contenham dados para que operações do conector possam retornar resultados quando chamadas. Por exemplo, se você usar o Banco de Dados SQL do Azure, poderá usar os bancos de dados de exemplo incluídos para testar as operações do conector do SQL Server.
As informações necessárias para criar uma conexão com o banco de dados SQL, como o SQL Server e o nome do banco de dados. Se você estiver usando a Autenticação do Windows ou a Autenticação do SQL Server para autenticar o acesso, também precisará do nome de usuário e da senha. Você pode encontrar essas informações na cadeia de conexão.
Importante
Se você usar uma cadeia de conexão do SQL Server copiada diretamente do portal do Azure, será necessário adicionar manualmente sua senha à cadeia de conexão. Para obter informações confidenciais, como essa cadeia de caracteres, use o fluxo de autenticação mais seguro disponível. A Microsoft recomenda autenticar o acesso aos recursos do Azure com uma identidade gerenciada quando possível e atribuir uma função que tenha o privilégio mínimo necessário.
Se essa funcionalidade estiver indisponível, certifique-se de proteger as cadeias de conexão por meio de outras medidas, como o Azure Key Vault, que você pode usar com as configurações do aplicativo nos Fluxos de trabalho padrão. Em seguida, você pode fazer referência direta a cadeias de caracteres seguras, como cadeias de conexão e chaves. De modo semelhante aos modelos do ARM, em que é possível definir variáveis de ambiente no momento da implantação, você pode definir as configurações de aplicativo na Definição de fluxo de trabalho do aplicativo lógico padrão. Em seguida, você pode capturar os valores da infraestrutura gerados dinamicamente, como pontos de extremidade de conexão, cadeias de caracteres de armazenamento, entre outros. Para obter mais informações, consulte Tipos de aplicativo para a plataforma de identidade da Microsoft.
Para um banco de dados SQL no Azure, a cadeia de conexão tem o seguinte formato:
Server=tcp:{your-server-name}.database.windows.net,1433;Initial Catalog={your-database-name};Persist Security Info=False;User ID={your-user-name};Password={your-password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Para localizar essa cadeia de caracteres no portal do Azure, abra o banco de dados.
No menu do banco de dados, em Propriedades, selecione Cadeias de conexão.
Para um servidor SQL local, a cadeia de conexão tem o seguinte formato:
Server={your-server-address};Database={your-database-name};User Id={your-user-name};Password={your-password};
Nos fluxos de trabalho Standard, para usar os gatilhos internos do SQL, você deve habilitar o controle de alterações na tabela onde deseja usar o gatilho. Para obter mais informações, veja Habilitar e desabilitar o controle de alterações.
O fluxo de trabalho do aplicativo lógico no qual você deseja acessar seu banco de dados SQL. Se você quiser iniciar seu fluxo de trabalho com uma operação de gatilho do SQL Server, precisará começar com um fluxo de trabalho em branco. Para usar uma ação do SQL Server, inicie seu fluxo de trabalho com qualquer gatilho.
Para se conectar a um SQL Server local, os seguintes requisitos extras se aplicam dependendo de se você tem um fluxo de trabalho de aplicar lógico de Consumo ou Standard.
Fluxo de trabalho de consumo:
Nos Aplicativos Lógicos do Azure multilocatário, você precisa do gateway de dados local instalado em um computador local e um recurso de gateway de dados que já tenha sido criado no Azure.
Fluxo de trabalho padrão:
Você pode usar o conector SQL Server interno ou o conector gerenciado.
Para usar a autenticação do Microsoft Entra ou a autenticação de identidade gerenciada em seu aplicativo lógico, você precisará configurar o SQL Server para trabalhar com esses tipos de autenticação. Para saber mais, confira Autenticação – referência de conector gerenciado do SQL Server.
Para usar o conector interno, você pode autenticar sua conexão com uma identidade gerenciada, com o Microsoft Entra ID ou com uma cadeia de conexão. Você pode ajustar o pool de conexões especificando parâmetros na cadeia de conexão. Para obter mais informações, examine o Pooling de Conexão.
Para usar o conector gerenciado do SQL Server, siga os mesmos requisitos de um fluxo de trabalho de aplicativo lógico de consumo nos Aplicativos Lógicos do Azure multilocatário. Para outros requisitos de conector, examine a referência do conector gerenciado do SQL Server.
Adicionar um gatilho do SQL Server
As seguintes etapas usam o portal do Azure, mas com a extensão de Aplicativos Lógicos do Azure apropriada, você também pode usar as seguintes ferramentas para criar fluxos de trabalho do aplicativo lógico:
- Fluxos de trabalho de consumo: Visual Studio Code
- Fluxos de trabalho padrão: Visual Studio Code
No portal do Azure, abra o recurso de aplicativo lógico de Consumo.
No menu da barra lateral do recurso, em Ferramentas de Desenvolvimento, selecione o designer para abrir seu fluxo de trabalho em branco.
Adicione o gatilho gerenciado do SQL Server desejado para seu cenário seguindo as etapas gerais para adicionar um gatilho.
Este exemplo continua com o gatilho do SQL Server chamado Quando um item é criado.
Se solicitado, forneça as informações da sua conexão. Quando terminar, selecione Criar novo.
Depois que a caixa de informações do gatilho for exibida, forneça as informações necessárias exigidas pelo seu gatilho selecionado.
Para este exemplo, no gatilho chamado Quando um item é criado, forneça os valores do nome do servidor SQL e o nome do banco de dados, se você não tiver fornecido anteriormente. Caso contrário, na lista Nomes de tabela, selecione a tabela que você deseja usar. Selecione a Frequência e o Intervalo para definir o cronograma do gatilho para verificar se há novos itens.
Adicione todos os outros parâmetros disponíveis desejados na lista de parâmetros avançados .
Esse gatilho retorna apenas uma linha da tabela selecionada, nada mais. Para executar outras tarefas, continue adicionando uma ação do conector do SQL Server ou outra ação que execute a próxima tarefa que você deseja em seu fluxo de trabalho do aplicativo lógico.
Por exemplo, para ver os dados nessa linha, você pode adicionar outras ações que criam um arquivo que inclui os campos da linha retornada e, em seguida, enviar alertas por email. Para saber mais sobre outras ações disponíveis para esse conector, confira a página de referência do conector do SQL Server.
Quando terminar, salve o fluxo de trabalho. Selecione Salvar na barra de ferramentas do designer.
Quando você salva o fluxo de trabalho, essa etapa publica automaticamente suas atualizações no aplicativo lógico implantado, que está ativo no Azure. Com apenas um gatilho, o fluxo de trabalho apenas verifica o banco de dados SQL com base na agenda especificada. Você precisa adicionar uma ação que responde ao gatilho.
Adicionar uma ação do SQL Server
As seguintes etapas usam o portal do Azure, mas com a extensão de Aplicativos Lógicos do Azure adequada, você também pode usar as seguintes ferramentas para compilar fluxos de trabalho de aplicativo lógico:
- Fluxos de trabalho de consumo: Visual Studio Code
- Fluxos de trabalho padrão: Visual Studio Code
Neste exemplo, o fluxo de trabalho do aplicativo de lógica começa com o gatilho de recorrência e chama uma ação que obtém uma linha de um banco de dados SQL.
No portal do Azure, abra o recurso de aplicativo lógico de Consumo.
No menu da barra lateral do recurso, em Ferramentas de Desenvolvimento, selecione o designer para abrir seu fluxo de trabalho.
Adicione a ação gerenciada do SQL Server desejada seguindo as etapas gerais para adicionar uma ação.
Este exemplo continua com a ação do SQL Server chamada Obter linha, que obtém um único registro.
Se solicitado, forneça as informações da sua conexão. Quando terminar, selecione Criar.
Depois que a caixa de informações da ação for exibida, na lista Nome da tabela, selecione a tabela que você deseja usar. Na propriedade ID da coluna, insira a ID do registro desejado.
Neste exemplo, o nome da tabela é SalesLT.Customer.
Essa ação retorna apenas uma linha da tabela selecionada, nada mais. Para exibir os dados nessa linha, adicione outras ações. Por exemplo, essas ações podem criar um arquivo, incluir os campos da linha retornada e armazenar o arquivo em uma conta de armazenamento em nuvem. Para saber mais sobre outras ações disponíveis para esse conector, confira a página de referência do conector.
Quando terminar, salve o fluxo de trabalho. Selecione Salvar na barra de ferramentas do designer.
Conectar-se ao seu banco de dados
Quando você adiciona um gatilho ou uma ação que conecta um serviço ou um sistema e não tem uma conexão existente ou ativa, os Aplicativos Lógicos do Azure solicitam que forneça as informações de conexão, que variam de acordo com o tipo, por exemplo:
- Suas credenciais de conta
- Um nome a ser usado para a conexão
- O nome do sistema ou do servidor
- O tipo de autenticação a ser usado
- Uma cadeia de conexão
Depois de fornecer essas informações, continue com as seguintes etapas com base no banco de dados de destino:
- Conectar-se ao Banco de Dados SQL do Azure baseado em nuvem ou à Instância Gerenciada de SQL
- Conectar-se ao SQL Server local
Conectar-se ao Banco de Dados SQL do Azure ou à Instância Gerenciada de SQL
Para acessar uma Instância Gerenciada de SQL sem usar o gateway de dados local, você precisa configurar pontos de extremidade públicos na Instância Gerenciada de SQL do Azure. O ponto de extremidade público usa a porta 3342, portanto, especifique esse número de porta ao criar a conexão do aplicativo lógico.
Na caixa de informações da conexão, conclua as seguintes etapas:
Em Nome da conexão, dê um nome à conexão.
Para Tipo de autenticação, selecione a autenticação necessária e habilitada no seu banco de dados na Instância Gerenciada de SQL ou no Banco de Dados SQL do Azure:
Autenticação Descrição Cadeia de conexão Compatível apenas com fluxos de trabalho Standard que utilizam o conector embutido do SQL Server.
Requer a string de conexão para o seu servidor SQL e banco de dados.OAuth do Active Directory Compatível apenas com fluxos de trabalho Standard que utilizam o conector embutido do SQL Server. Para saber mais, confira a seguinte documentação:
- Autenticação para conector do SQL Server
- Habilitar o OAuth 2.0 com a ID do Microsoft EntraIdentidades gerenciadas de Aplicativos Lógicos Compatível com o conector gerenciado do SQL Server. Em fluxos de trabalho Standard, esse tipo de autenticação está disponível para o conector interno do SQL Server, mas a opção é nomeada Identidade gerenciada.
Requer os seguintes itens:
- Uma identidade gerenciada válida que está habilitada no recurso do aplicativo lógico e tem acesso ao banco de dados.
- Acesso de função de colaborador do BD do SQL ao recurso do SQL Server
--- Acesso de colaborador ao grupo de recursos que inclui o recurso do SQL Server.
Para saber mais, confira a seguinte documentação:
- Autenticação de identidade gerenciada para conector do SQL Server
- Funções deServer-LevelEntidade de serviço (aplicativo Microsoft Entra) Compatível com o conector gerenciado do SQL Server.
Requer um aplicativo do Microsoft Entra e uma entidade de serviço. Para obter mais informações, confira Criar uma entidade de serviço e um aplicativo do Microsoft Entra com acesso a recursos usando o portal do Azure.Microsoft Entra integrado Compatível com o conector gerenciado do SQL Server.
Requer uma identidade gerenciada válida no Microsoft Entra que está habilitada em seu recurso de aplicativo lógico e tem acesso ao seu banco de dados. Para obter mais informações, consulte estes artigos:
- Visão Geral de Segurança do SQL do Azure – Autenticação
- Autorizar o acesso ao banco de dados para o SQL do Azure – Autenticação e autorização
- Autenticação do Microsoft Entra para SQL do AzureAutenticação do SQL Server Compatível com o conector gerenciado do SQL Server.
Requer os seguintes itens:
- Um recurso de gateway de dados criado anteriormente no Azure para sua conexão, independentemente de seu aplicativo lógico estiver nos Aplicativos Lógicos do Azure multilocatários.
- Um nome de usuário válido e uma senha forte que são criados e armazenados no banco de dados do SQL Server. Para obter mais informações, consulte os seguintes artigos:
- Visão Geral de Segurança do SQL do Azure – Autenticação
- Autorizar o acesso ao banco de dados para o SQL do Azure – Autenticação e autorizaçãoO exemplo a seguir mostra como a caixa de informações de conexão poderá aparecer se você usar o conector gerenciado do SQL Server e selecionar a autenticação integrada do Microsoft Entra :
Depois de selecionar o Microsoft Entra integrado, selecione Entrar. Dependendo do que você usa (Banco de Dados SQL do Azure ou Instância Gerenciada de SQL), selecione as suas credenciais de usuário para autenticação.
Selecione estes valores para o seu banco de dados:
Propriedade Obrigatório Descrição Nome do servidor Sim O endereço do servidor SQL, por exemplo, Fabrikam-Azure-SQL.database.windows.net Nome do banco de dados Sim O nome para o banco de dados SQL, por exemplo, Fabrikam-Azure-SQL-DB Nome da tabela Sim A tabela que você deseja usar, por exemplo, SalesLT.Customer Dica
Para fornecer suas informações de banco de dados e de tabela, você tem estas opções:
Encontre essas informações na cadeia de conexão do banco de dados. Por exemplo, no portal do Azure, localize e abra o banco de dados. No menu do banco de dados, selecione Cadeias de conexão ou Propriedades, em que você pode encontrar esta cadeia de caracteres:
Server=tcp:{your-server-address}.database.windows.net,1433;Initial Catalog={your-database-name};Persist Security Info=False;User ID={your-user-name};Password={your-password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Por padrão, as tabelas em bancos de dados do sistema são filtradas, portanto, elas podem não aparecer automaticamente quando você seleciona um banco de dados do sistema. Como alternativa, você pode inserir manualmente o nome da tabela depois de selecionar Inserir valor personalizado na lista de bancos de dados.
Essa caixa de informações do banco de dados é semelhante ao seguinte exemplo:
Agora, continue com as etapas que você ainda não concluiu em Adicionar um gatilho SQL ou Adicionar uma ação SQL.
Conectar-se ao SQL Server local
Na caixa de informações da conexão, conclua as seguintes etapas:
Para conexões com o SQL Server local que exigem o gateway de dados local, verifique se você concluiu estes pré-requisitos.
Caso contrário, o recurso de gateway de dados não aparecerá na lista Gateway de conexão quando você criar a conexão.
Para Tipo de Autenticação, selecione a autenticação necessária e habilitada no SQL Server:
Autenticação Descrição Autenticação do SQL Server Compatível com o conector gerenciado do SQL Server e o conector interno do SQL Server.
Requer os seguintes itens:
- Um recurso de gateway de dados criado anteriormente no Azure para sua conexão, independentemente de seu aplicativo lógico estiver nos Aplicativos Lógicos do Azure multilocatários.
- Um nome de usuário válido e uma senha forte que são criados e armazenados em seu SQL Server.
Para obter mais informações, confira Autenticação do SQL Server.Autenticação do Windows Compatível com o conector gerenciado do SQL Server.
Requer os seguintes itens:
- Um recurso de gateway de dados criado anteriormente no Azure para sua conexão, independentemente de seu aplicativo lógico estiver nos Aplicativos Lógicos do Azure multilocatários.
- Um nome de usuário e senha válidos do Windows para confirmar sua identidade por meio de sua conta do Windows.
Para obter mais informações, confira Autenticação do Windows.Selecione ou forneça os seguintes valores para o banco de dados SQL:
Propriedade Obrigatório Descrição Nome do SQL Server Sim O endereço do servidor SQL, por exemplo, Fabrikam-Azure-SQL.database.windows.net Nome do banco de dados SQL Sim O nome do banco de dados do SQL Server, por exemplo, Fabrikam-Azure-SQL-DB Nome de usuário Sim O seu nome de usuário do SQL Server e do banco de dados do SQL Senha Sim A senha do SQL Server e do banco de dados do SQL Assinatura Sim, para a autenticação do Windows A assinatura do Azure para o recurso de gateway de dados que você criou anteriormente no Azure Gateway de Conexão Sim, para a autenticação do Windows O nome para o recurso de gateway de dados que você criou anteriormente no Azure
Dica: se o seu gateway não aparecer na lista, verifique se você configurou corretamente o gateway.Dica
Você pode encontrar essas informações na cadeia de conexão do banco de dados:
Server={your-server-address}Database={your-database-name}User ID={your-user-name}Password={your-password}
O exemplo a seguir mostra como a caixa de informações de conexão poderá aparecer se você selecionar a autenticação do Windows .
Quando estiver pronto, selecione Criar.
Continue com as etapas que você ainda não concluiu em Adicionar um gatilho SQL ou adicionar uma ação SQL.
Lidar com os dados em massa
Às vezes, você trabalha com conjunto de resultados tão grandes que o conector não retorna todos os resultados ao mesmo tempo. Ou você deseja ter um controle melhor sobre o tamanho e a estrutura dos conjuntos de resultados. A lista a seguir inclui alguns modos de lidar com esses grandes conjuntos de resultados das seguintes maneiras:
Para ajudar você a gerenciar os resultados como conjuntos menores, ative a paginação. Para obter mais informações, consulte Obter mais dados, itens ou registros usando paginação nos Aplicativos Lógicos do Azure. Para obter mais informações, confira Paginação de SQL para transferência de dados em massa com Aplicativos Lógicos.
Crie um procedimento armazenado que organize os resultados da maneira desejada. O conector do SQL Server fornece muitos recursos de back-end que você pode acessar usando os Aplicativos Lógicos do Azure, permitindo a você automatizar com mais facilidade as tarefas comerciais que funcionam com tabelas do banco de dados SQL.
Quando uma ação do SQL obtém ou insere várias linhas, o fluxo de trabalho do aplicativo lógico pode iterar por essas linhas usando um loop until dentro desses limites. No entanto, quando o aplicativo lógico precisa trabalhar com conjuntos de registros muito grandes, como milhares ou milhões de linhas, você deseja minimizar os custos resultantes de chamadas para o banco de dados.
Para organizar os resultados da maneira desejada, você pode criar um procedimento armazenado que é executado na instância do SQL e usa a
SELECT - ORDER BYinstrução. Essa solução fornece a você mais controle sobre o tamanho e a estrutura de seus resultados. Seu aplicativo lógico chama o procedimento armazenado usando a ação Executar procedimento armazenado do conector do SQL Server. Para obter mais informações, confira Cláusula SELECT – ORDER BY.Observação
O conector do SQL Server tem um tempo limite máximo para procedimento armazenado inferior a 2 minutos. Alguns procedimentos armazenados podem levar mais tempo do que esse limite para serem concluídos, causando um erro
504 Timeout. Você pode contornar esse problema usando um gatilho de conclusão SQL, uma consulta passagem SQL nativa, uma tabela de estado e trabalhos do lado do servidor.Para esta tarefa, você pode usar o Agente de Trabalho Elástico do Azure para o Banco de Dados SQL do Azure. Para o SQL Server local e a Instância Gerenciada de SQL, você pode usar o SQL Server Agent. Para saber mais, confira Manipular tempos limite de procedimento armazenado de execução longa no conector do SQL Server para Aplicativos Lógicos do Azure.
Manipular dados em massa dinâmicos
Quando você faz uma chamada para um procedimento armazenado usando o conector do SQL Server, a saída retornada é, algumas vezes, dinâmica. Nesse cenário, siga estas etapas:
No portal do Azure, abra o aplicativo lógico e o fluxo de trabalho no designer.
Exiba o formato de saída realizando uma execução de teste. Copie e salve a saída de exemplo.
No designer, na ação em que você chama o procedimento armazenado, adicione a ação interna chamada Analisar JSON.
Na ação Analisar JSON, selecione a opção Usar carga de amostra para gerar esquema.
Na caixa Inserir ou colar uma amostra de conteúdo JSON, cole a saída de exemplo e selecione Concluído.
Observação
Se você receber um erro informando que os Aplicativos Lógicos do Azure não podem gerar um esquema, verifique se a sintaxe da saída de exemplo está formatada corretamente. Se ainda não for possível gerar o esquema, insira-o manualmente na caixa Esquema.
Quando terminar, salve o fluxo de trabalho.
Para fazer referência às propriedades de conteúdo JSON, siga estas etapas:
- Selecione dentro das caixas de edição em que você deseja referenciar as propriedades JSON.
- Selecione o ícone de raio para abrir a lista de conteúdo dinâmico.
- Na lista, na seção Analisar JSON, selecione os tokens de dados para as propriedades de conteúdo JSON desejadas.