Verbinding maken met Oracle-databases vanuit werkstromen in Azure Logic Apps

Van toepassing op: Azure Logic Apps (Verbruik + Standard)

Wanneer uw werkstromen met Oracle-gegevens moeten werken, maakt u verbinding met uw Oracle-database met behulp van de connector Oracle Database in Azure Logic Apps. U hebt toegang tot databases die on-premises of op een Azure virtuele machine worden gehost.

Met de Oracle Database-connector kunt u algemene taken voor gegevensintegratie oplossen, zoals:

  • Voeg klantrecords toe aan uw database.
  • Orderrecords in uw database bijwerken.
  • Tabelrijen ophalen, invoegen of verwijderen als onderdeel van uw werkstroom.

Voor standaardworkflows is de ingebouwde connector van Oracle Database beschikbaar in openbare preview. De connector draait in hetzelfde proces samen met de Azure Logic Apps-runtime, wat een lagere latentie en een hogere doorvoer kan bieden dan de beheerde connector. Wanneer de runtime netwerktoegang heeft tot het Oracle-endpoint, heeft de ingebouwde connector geen on-premises datagateway nodig. Azure-gehoste workflows kunnen virtuele netwerkintegratie gebruiken om privé-Oracle-endpoints te bereiken, terwijl workflows met het hybride implementatiemodel Oracle-databases kunnen bereiken vanuit door klanten beheerde infrastructuur.

Ondersteunde Oracle Database-versies

De volgende tabel bevat de ondersteunde Oracle DB-versies die door elke connector worden ondersteund:

Connector Logic App Ondersteunde Oracle DB-versies
Beheerd -Consumptie
-Standaard
- Oracle 9 en hoger
- Oracle Data Access Client (ODAC) 11.2 en hoger
Ingebouwd (preview) Standard Oracle Database 11 en hoger

Technisch referentiemateriaal voor connectoren

De Oracle Database-connector heeft verschillende versies, op basis van het werkstroomtype van de logische app en de hostomgeving.

Logic App Omgeving Connectorversie
Verbruik Multitenant-Azure Logic Apps Beheerde connector, die wordt weergegeven in de connectorgalerij onder het gedeelde filter.

Zie de naslaginformatie over beheerde Oracle Database-connectors voor meer informatie.
Standard Single-tenant Azure Logic Apps, App Service Environment v3 (alleen Windows-plannen) en Hybride Beheerde connector, die wordt weergegeven in de connectorgalerij onder het gedeelde filter, en ingebouwde connector (openbare preview), die wordt weergegeven in de connectorgalerij onder het ingebouwde filter.

De ingebouwde versie wordt in proces uitgevoerd met de Azure Logic Apps runtime en vereist geen on-premises gegevensgateway omdat de runtime uw Oracle-eindpunt via het netwerk kan bereiken.

Zie voor meer informatie:

- Naslaginformatie over beheerde Oracle Database-connectors
- Ingebouwde connectoren referentie

Ingebouwde connectorbewerkingen (voorvertoning)

De ingebouwde connector ondersteunt momenteel de volgende acties:

Naam Parameters Description Returns
Query uitvoeren (executeQuery) - Query (query): Vereist met string type. De SQL-query die moet worden uitgevoerd.

- Queryparameters (queryParameters): Optioneel met object type. De queryparameters die moeten worden opgenomen.
Voert een SQL-query uit. Het resultaat van de SQL-query als een array.
Opgeslagen procedure uitvoeren (executeStoredProcedure) - Naam van opgeslagen procedure (storedProcedure): vereist met string type. De naam van de opgeslagen procedure die moet worden uitgevoerd.

- Parameters voor opgeslagen procedures (storedProcedureParameters): Optioneel met object type. De opgeslagen procedureparameters die moeten worden opgenomen.
Voert een opgeslagen procedure uit en retourneert de resultatensets en uitvoerparameters. - Resultaatsets (resultSets) met string type. De lijst met resultatensets die worden geretourneerd door de opgeslagen procedure.

- Uitvoerparameters (outputParmaters) met string type. De uitvoerparameterwaarden die worden geretourneerd door de opgeslagen procedure.
Rijen ophalen (getRows) - Tabelnaam (tableName): Vereist met string type. De naam voor de brontabel.

- Where-voorwaarde (columnValuesForWhereCondition): Optioneel met object type. Het sleutel-waardepaar van kolommen waarmee de rijen worden geïdentificeerd die moeten worden opgehaald.

- Verschuiving voor Rijen ophalen (skipCount): Optioneel met string type. Het aantal items dat moet worden overgeslagen. De standaardwaarde is 0.

- Maximum aantal rijen (maxcount): Optioneel met string type. Het maximale aantal rijen om op te halen. De standaardwaarde is 0.

- Bestelkolom (orderBy): Optioneel met string type. De kolomnaam die moet worden gebruikt voor het ordenen van het queryresultaat.

- Selecteer Kolommen (filterBy): Optioneel bij gebruik van string type. De kolomwaarde die moet worden opgehaald uit de tabel of weergave.
Hiermee haalt u een of meer rijen op op basis van de opgegeven voorwaarde. De opgehaalde rijen als een array.
Tabellen ophalen (getTables) Alleen tabellen retourneren die eigendom zijn van de huidige gebruiker (ownedTables): Optioneel met string type. Retourneert alleen tabellen waarin de eigenaar de opgegeven gebruiker is. Haalt een lijst met tabellen op. De lijst met tabellen als een array.
Rij invoegen (insertRow) - Tabelnaam (tableName): Vereist met string type. De naam van de tabel.

- Kolommen instellen (setColumns): Optioneel met object type. De waarden van de rijvelden.
Hiermee voegt u een rij in. De ingevoegde rij met object type.

Vereisten

Vereisten voor beheerde connectors (verbruik en standaard)

  • Download en installeer de on-premises gegevensgateway.

    Deze gateway fungeert als een brug en biedt een beveiligde gegevensoverdracht tussen on-premises gegevens en uw app of client. U kunt dezelfde gatewayinstallatie gebruiken met meerdere services en gegevensbronnen, wat betekent dat u de gateway mogelijk slechts één keer hoeft te installeren.

  • Installeer uw Oracle-client op de computer waarop u de on-premises gegevensgateway hebt geïnstalleerd. Anders treedt er een fout op wanneer u de verbinding probeert te maken of te gebruiken.

  • Maak een Azure-gatewayresource voor de installatie van uw gateway.

Vereisten voor ingebouwde connectors (Standaard, preview)

  • Zorg ervoor dat de werkstroom van uw standaard logische app uw Oracle-eindpunt kan bereiken, inclusief alle host-, poort-, DNS-omzettings- en firewallregels.

  • Wanneer u de Oracle-databaseverbinding maakt, hebt u de volgende waarden nodig:

    • adres van de Oracle-databaseserver
    • Gebruikersnaam
    • Wachtwoord

    Voor het serveradres specificeert u deze waarde in een van de volgende formaten:

    Notatie Syntaxis Voorbeeld
    Easy Connect (niet-SSL) < host>:<port>/<database-service-name> localhost:1522/XE
    TNS-descriptor (SSL: Transparent Network Substrate): de volledige Oracle Datasource-descriptor (description=(retry_count=<nieuwe pogingen>)(retry_delay=<vertragingsduur>)(address=(protocol=tcps)(port=<poortnummer>)(host=><))(connect_data=(service_name=<servicenaam>))(security=(ssl_server_dn_match=yes))) (description=(retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=localhost))(connect_data=(service_name=XE))(security=(ssl_server_dn_match=yes)))
  • Voor de actie ' Get rows' die in dit voorbeeld wordt gebruikt, moet je de naam van de tabel weten om toegang te krijgen.

    Als u deze gegevens niet weet, neemt u contact op met uw Oracle Database-beheerder of haalt u de uitvoer op van de volgende instructie: select * from <table-name>

Bekende problemen en beperkingen

De huidige connectorversies bieden geen ondersteuning voor triggers. Gebruik een trigger die past bij uw scenario om uw werkstroom te starten en voeg vervolgens Oracle-acties toe.

Connector Limitations
Beheerd - Tabellen met samengestelde sleutels
- Tabellen met geneste objecttypen
- Databasefuncties met niet-schaalwaarden
Ingebouwde - Geen speciale update- of verwijderacties. Voor update- en verwijderscenario's gebruikt u Execute query of Opgeslagen procedure uitvoeren.
- Sommige verbindingsproblemen worden mogelijk pas zichtbaar tijdens de uitvoering van de workflow, in plaats van bij het aanmaken van de verbinding.
- De standaard query-timeout is 30 seconden. Langere bewerkingen blijven afhankelijk van de time-outinstellingen voor de werkstroomactie en de functiehost.
- Oracle-identificatoren kunnen hoofdlettergevoelig zijn. Zorg ervoor dat tabel-, weergave- en kolomnamen overeenkomen met de identifiers die in je schema zijn gedefinieerd.

Een actie toevoegen

De stappen voor het toevoegen en gebruiken van een Oracle-actie verschillen afhankelijk van of u de ingebouwde connector of beheerde connector gebruikt.

Een actie voor een ingebouwde connector toevoegen (Standaard, Preview)

  1. Open in de Azure portal uw standaard logische app-resource.

  2. Open uw werkstroom in de ontwerper.

  3. Volg de algemene stappen om de Oracle Database-actie toe te voegen die u aan uw werkstroom wilt toevoegen.

    In dit voorbeeld gaat men verder met de actie Rijen ophalen.

  4. Voer in het verbindingsinformatiepaneel de benodigde informatie in, zoals de gewenste verbindingsnaam, adres van de Oracle-databaseserver, gebruikersnaam en wachtwoord, bijvoorbeeld:

    De schermafbeelding toont de Azure-portal, de standaardwerkstroomontwerper en het deelvenster Oracle Database-verbinding voor de actie Rijen ophalen.

  5. Wanneer u klaar bent, selecteert u Nieuwe maken.

  6. Voer in het deelvenster actiegegevens de parameterwaarden in die vereist zijn voor de geselecteerde actie.

    Als u bijvoorbeeld de actie Rijen ophalen selecteert, voert u de tabelnaam in:

    Schermafbeelding toont de Azure portal, de standaardwerkstroomontwerper en de actie Rijen ophalen met een voorbeeldtabelnaam.

  7. Voeg eventuele andere acties toe die nodig zijn om uw werkstroom te voltooien.

  8. Sla de werkstroom op. Selecteer in de werkbalk van de ontwerper Opslaan.

Een actie voor een beheerde connector toevoegen (Verbruik en Standaard)

  1. Open de resource voor de logische app Verbruik of Standaard in de Azure-portal.

  2. Open uw werkstroom in de ontwerper.

  3. Volg de algemene stappen om de Oracle Database-actie toe te voegen die u aan uw werkstroom wilt toevoegen.

    In dit voorbeeld wordt de actie Rij ophalen voortgezet.

  4. Voer in het deelvenster Verbindingsgegevens de vereiste verbindingsgegevens in.

  5. Selecteer voor de eigenschap Gateway het Azure-abonnement en de Azure-gatewayresource die u wilt gebruiken.

  6. Nadat u de verbinding hebt voltooid, selecteert u een tabel in de lijst tabelnamen .

  7. Voer voor de eigenschap Rij-id de gewenste rij-id in de tabel in.

    In het volgende voorbeeld worden taakgegevens geretourneerd uit een Human Resources-database:

    Schermafbeelding toont de Azure-portal, werkstroomontwerper en actie Rij ophalen met de tabelnaam en rij-id.

  8. Voeg eventuele andere acties toe die nodig zijn om uw werkstroom te voltooien.

  9. Sla de werkstroom op. Selecteer in de werkbalk van de ontwerper Opslaan.

Verbindingsproblemen met Oracle-database oplossen

Ingebouwde aansluiting

Wanneer een ingebouwde connectoractie faalt, bekijk dan de workflow-uitvoergeschiedenis en diagnostische logs. De volgende tabel beschrijft veelvoorkomende statuscodes en stappen voor probleemoplossing:

Statuscode Oorzaak en oplossing
401 Verificatie is mislukt. Controleer de gebruikersnaam en het wachtwoord, de status van het accountslot en het beleid voor het verlopen van het wachtwoord.
404 Het gevraagde databaseobject werd niet gevonden. Controleer de naam van het schema, de tabel of de weergave, inclusief de identificatiebehuizing, en bevestig dat de gebruiker toestemming heeft om toegang te krijgen tot het object.
429 De Oracle-database bereikte een limiet aan middelen of sessies. Bekijk de limieten van Oracle-sessies en de instellingen voor workflow-gelijktijdigheid.
502 De runtime kon het Oracle-eindpunt niet bereiken. Controleer de connectiviteit van host en poorten, DNS-resolutie, firewallregels en beschikbaarheid van Oracle Listeners.
504 De bewerking is wegens een time-out afgebroken. Bekijk de querycomplexiteit en indexen en controleer de time-outinstellingen van de query en de workflowhost.

Beheerde connector

Fout: Kan de gateway niet bereiken

Oorzaak: De on-premises gegevensgateway kan geen verbinding maken met de cloud.

Risicobeperking: zorg ervoor dat uw gateway wordt uitgevoerd op de on-premises computer waarop u de gateway hebt geïnstalleerd en dat er een internetverbinding is. Installeer de gateway niet op een computer die mogelijk wordt uitgeschakeld of in slaapstand gaat. U kunt ook proberen de on-premises gegevensgateway-service (PBIEgwService) opnieuw te starten.

Fout: De provider die wordt gebruikt, is afgeschaft: 'System.Data.OracleClient vereist Oracle-clientsoftware versie 8.1.7 of hoger.' Als u de officiële provider wilt installeren, raadpleegt u https://go.microsoft.com/fwlink/p/?LinkID=272376.

Oorzaak: De Oracle-client-SDK is niet geïnstalleerd op de computer waarop de on-premises gegevensgateway wordt uitgevoerd.

Oplossing: Download en installeer de Oracle-client-SDK op dezelfde computer als de on-premises gegevensgateway.

Fout: Tabel [Tablename] definieert geen sleutelkolommen

Oorzaak: De tabel heeft geen primaire sleutel.

Oplossing: Voor de Oracle Database-connector moet u een tabel met een primaire-sleutelkolom gebruiken.