Liga-te às bases de dados Oracle a partir de fluxos de trabalho no Azure Logic Apps

Aplica-se a: Aplicativos Lógicos do Azure (Consumo + Padrão)

Quando os seus fluxos de trabalho precisarem de trabalhar com dados da Oracle, ligue-se à sua base de dados Oracle usando o conector Oracle Database na Azure Logic Apps. Pode aceder a bases de dados alojadas localmente ou numa máquina virtual Azure.

O conector Oracle Database ajuda-o a resolver tarefas comuns de integração de dados, tais como:

  • Adicione registos de clientes à sua base de dados.
  • Atualize os registos de encomendas na sua base de dados.
  • Obter, inserir ou eliminar linhas de tabela como parte do seu fluxo de trabalho.

Versões suportadas da Oracle Database

A tabela seguinte lista as versões suportadas do Oracle DB que cada conector suporta:

Connector Aplicação de Lógica Versões suportadas do Oracle DB
Managed - Consumo
- Padrão
- Oracle 9 e posteriores
- Oracle Data Access Client (ODAC) 11.2 e posteriores
Incorporado (pré-visualização) Standard Oracle Database 11 e posteriores

Referência técnica do conector

O conector Oracle Database tem diferentes versões, consoante o tipo de fluxo de trabalho da aplicação lógica e o ambiente anfitrião.

Aplicação de Lógica Ambiente Versão do conector
Consumo Aplicativos Lógicos Multilocatário do Azure Conector gerenciado, que aparece na galeria de conectores sob o filtro Compartilhado .

Para mais informações, consulte a referência Oracle Database managed connector.
Standard Azure Logic Apps single-tenant, Ambiente do Serviço de Aplicações v3 (apenas planos Windows) e Híbrido Conector gerido, que aparece na Galeria de Conectores sob a opção Partilhado, e conector incorporado (pré-visualização pública), que aparece na Galeria de Conectores sob a opção Incorporado.

A versão incorporada é executada internamente com o runtime do Azure Logic Apps e não requer o gateway de dados local porque o runtime consegue acessar o endpoint Oracle através da rede.

Para mais informações, consulte:

- Referência de conectores geridos da base de dados Oracle
- Referência do conector incorporado

Operações de ligação incorporadas (pré-visualização)

O conector incorporado suporta atualmente as seguintes ações:

Nome Parâmetros Description Devoluções
Executar consulta (executeQuery) - Consulta (query): Obrigatória com o tipo string. A consulta SQL a executar.

- Parâmetros de Consulta (queryParameters): Opcionais com object tipo. Os parâmetros da consulta a incluir.
Executa uma consulta SQL. O resultado da consulta SQL como um array.
Executar procedimento armazenado (executeStoredProcedure) - Nome do procedimento armazenado (storedProcedure): Exigido com string tipo. O nome para o procedimento armazenado a executar.

- Parâmetros de procedimento armazenado (storedProcedureParameters): Opcionais do tipo object. Os parâmetros a incluir no procedimento armazenado.
Executa um procedimento armazenado e devolve os conjuntos de resultados e parâmetros de saída. - Conjuntos de resultados (resultSets) com string tipo. A lista de conjuntos de resultados devolvidos pelo procedimento armazenado.

- Parâmetros de saída (outputParmaters) com tipo string. Os valores dos parâmetros de saída retornados pelo procedimento armazenado.
Arranja linhas (getRows) - Nome da tabela (tableName): Obrigatório com o tipo string. O nome da tabela de origem.

- Condição WHERE (columnValuesForWhereCondition): Opcional com object o tipo. O par de chave-valor das colunas que identifica as linhas a obter.

- Deslocamento para Obter Linhas (skipCount): Opcional com o tipo de string. O número de entradas a saltar. O padrão é 0.

- Linhas Máximas (maxcount): Opcional com o string tipo. O número máximo de linhas a obter. O padrão é 0.

- Coluna de Ordenação (orderBy): Opcional com o string tipo. O nome da coluna a usar para ordenar o resultado da consulta.

- Selecionar Colunas (filterBy): Opcional com string tipo. O valor da coluna a obter da tabela ou da vista.
Obtém uma ou mais linhas com base na condição especificada. As linhas buscadas como um array.
Arranja mesas (getTables) Retornar apenas tabelas pertencentes ao utilizador atual (ownedTables): Opcional com o tipo string. Devolve apenas tabelas onde o proprietário é o utilizador fornecido. Recebe uma lista de tabelas. A lista de tabelas como um array.
Inserir linha (insertRow) - Nome da tabela (tableName): Obrigatório com o tipo string. O nome da tabela.

- Definir colunas (setColumns): Opcional com object tipo. Os valores dos campos da linha.
Insere uma linha. A linha inserida do tipo object.

Pré-requisitos

Pré-requisitos para conectores geridos (Consumo e Padrão)

  • Baixe e instale o gateway de dados no local.

    Esse gateway atua como uma ponte e fornece uma transferência de dados segura entre dados locais e seu aplicativo ou cliente. Você pode usar a mesma instalação de gateway com vários serviços e fontes de dados, o que significa que talvez só seja necessário instalar o gateway uma vez.

  • Instale o cliente Oracle no computador onde você instalou o gateway de dados local. Caso contrário, ocorrerá um erro quando você tenta criar ou usar a conexão.

  • Crie um recurso de gateway do Azure para a instalação do seu gateway.

Pré-requisitos para conectores incorporados (Standard, pré-visualização)

  • Certifique-se de que o seu fluxo de trabalho da aplicação Standard Logic pode chegar ao endpoint Oracle, incluindo qualquer host, porta, resolução DNS e regras de firewall.

  • Quando cria a ligação à base de dados Oracle, precisa dos seguintes valores:

    • Endereço IP do servidor de base de dados Oracle
    • Nome de utilizador
    • Palavra-passe

    Para o endereço IP do servidor, especifique este valor nos seguintes formatos:

    Formato Sintaxe Exemplo
    Easy Connect (não SSL) < host>:<porta>/<nome do serviço de base de dados> localhost:1522/XE
    Descriptor de Substrato de Rede Transparente (TNS) (SSL): O descritor completo da Oracle Datasource (description=(retry_count=<retries>)(retry_delay=<duração-do-atraso>)(endereço=(protocolo=tcps)(porta=<número-da-porta>)(host=<host>))(connect_data=(service_name=<nome-do-serviço>))(security=(ssl_server_dn_match=sim))) (descrição=(retry_count=20)(retry_delay=3)(endereço=(protocolo=TCPS)(porta=1522)(host=localhost))(connect_data=(service_name=XE))(segurança=(ssl_server_dn_match=sim)))
  • Para a ação Obter linha usada neste exemplo, você precisa saber o identificador da tabela a ser acessada.

    Se você não souber essas informações, entre em contato com o administrador do banco de dados Oracle ou obtenha a saída da seguinte instrução: select * from <table-name>.

Problemas e limitações conhecidos

As versões atuais dos conectores não suportam gatilhos. Usa qualquer gatilho que se adapte ao teu cenário para iniciar o teu fluxo de trabalho, e depois adiciona as ações do Oracle.

Connector Limitações
Managed - Tabelas com chaves compostas
- Tabelas com tipos de objetos aninhados
- Funções de base de dados com valores não escalares
Embutido - Sem ações dedicadas de atualização ou eliminação. Para cenários de atualização e eliminação, utilize as ações Executar consulta ou Executar procedimentos armazenados .
- Alguns problemas de ligação podem surgir apenas em tempo de execução do fluxo de trabalho, em vez de na criação da ligação.

Adicionar uma ação

Os passos para adicionar e usar uma ação Oracle variam consoante o conector incorporado ou o conector gerido.

Adicionar uma ação de conector integrado (Padrão, pré-visualização)

  1. No portal do Azure, abra seu recurso de aplicativo lógico padrão.

  2. No designer, abre o teu fluxo de trabalho.

  3. Siga os passos genéricos para adicionar a ação Oracle Database que deseja ao seu fluxo de trabalho.

    Este exemplo continua com a ação Obter linhas .

  4. No painel de informações de ligação, introduza a informação necessária, como o nome da ligação que pretende, endereço IP do servidor de base de dados Oraclor, nome de utilizador e palavra-passe, por exemplo:

    Screenshot mostra o portal Azure, o designer de workflow Standard e o painel de ligação Oracle Database para a ação Get rows.

  5. Quando terminar, selecione Criar novo.

  6. No painel de informação de ações, introduza os valores dos parâmetros necessários para a ação selecionada.

    Por exemplo, se selecionar a ação Obter linhas , introduza o nome da tabela:

    Screenshot mostra o portal Azure, o designer de workflow Standard e a ação Get rows com um nome de tabela de exemplo.

  7. Adiciona quaisquer outras ações necessárias para terminar o teu fluxo de trabalho.

  8. Guarde o fluxo de trabalho. Na barra de ferramentas do designer, selecione Salvar.

Adicionar uma ação de conector gerida (Consumo e Padrão)

  1. No portal Azure, abre o recurso da aplicação Consumo ou Lógica Padrão.

  2. No designer, abre o teu fluxo de trabalho.

  3. Siga os passos genéricos para adicionar a ação Oracle Database que deseja ao seu fluxo de trabalho.

    Este exemplo continua com a ação Obter linha.

  4. No painel de informações de ligação, introduza a informação de ligação necessária.

  5. Para a propriedade Gateway , selecione a assinatura do Azure e o recurso de gateway do Azure a serem usados.

  6. Depois de terminares a ligação, da lista de nomes da Tabela , seleciona uma tabela.

  7. Para a propriedade Id da linha, insira a Id da linha que deseja na sua tabela.

    No exemplo a seguir, os dados do trabalho são retornados de um banco de dados de Recursos Humanos:

    Screenshot mostra o portal Azure, o designer de workflow e a ação Get row com o nome da tabela e ID da linha.

  8. Adiciona quaisquer outras ações necessárias para terminar o teu fluxo de trabalho.

  9. Guarde o fluxo de trabalho. Na barra de ferramentas do designer, selecione Salvar.

Resolver problemas de ligação à base de dados Oracle

Erro: Não é possível acessar o gateway

Causa: o gateway de dados local não pode se conectar à nuvem.

Mitigação: Certifique-se de que o gateway está a ser executado no computador local onde instalou o gateway e tem conectividade com a internet. Evite instalar o gateway num computador que possa estar desligado ou entrar em modo de suspensão. Você também pode tentar reiniciar o serviço de gateway de dados local (PBIEgwService).

Erro: O provedor que está sendo usado foi preterido: 'System.Data.OracleClient requer software cliente Oracle versão 8.1.7 ou superior.' Para instalar o fornecedor oficial, consulte https://go.microsoft.com/fwlink/p/?LinkID=272376.

Causa: O SDK do cliente Oracle não está instalado no computador em que o gateway de dados local está sendo executado.

Resolução: baixe e instale o SDK do cliente Oracle no mesmo computador que o gateway de dados local.

Erro: A tabela '[Tablename]' não define nenhuma coluna de chave

Causa: a tabela não tem uma chave primária.

Resolução: o conector do Oracle Database requer que você use uma tabela com uma coluna de chave primária.