# Databasekoppeling

### Migratietool voor MySQL/PostgreSQL

Converteer MySQL- en PostgreSQL-databases- Ondersteuning voor MySQL, PostgreSQL en alle belangrijke SQL-databases
- Converteer SQL-databases naar NoSQL-databases
- Visuele data-mapping zonder code
- Converteer gegevens uit een kaartdatabase naar andere dataformaten, of andersom
- Specificeer de instellingen voor de database-sleutel

- Directe conversie en betaalbare automatiseringsmogelijkheden
- Logboekregistratie en foutafhandeling
- Definieer de acties die op de database-tabel kunnen worden uitgevoerd
- Raadpleeg databases direct
- Sorteer de invoerelementen van de database

## Converteer MySQL naar PostgreSQL

Een veelvoorkomende toepassing van MapForce is het migreren van data tussen MySQL- en PostgreSQL-databases. MapForce maakt dit eenvoudig met grafische tools voor data-mapping, waarbij u data kunt verplaatsen en configureren met een "drag-and-drop" interface. Daarnaast beschikt het over een uitgebreide bibliotheek met filters en functies voor dataverwerking, waarmee u de brongegevens kunt transformeren.

De databaseverbinding-wizard in MapForce maakt het eenvoudig om verbinding te maken. SQLite-verbindingen worden ondersteund als directe, native verbindingen met het SQLite-databasebestand. Er zijn geen aparte drivers nodig. PostgreSQL-verbindingen worden ondersteund, zowel als native verbindingen als via driver-gebaseerde verbindingen via interfaces (drivers) zoals ODBC of JDBC. Native verbindingen vereisen geen drivers.

Wanneer u de database structuren van MySQL en PostgreSQL in het mappaneel laadt, interpreteert MapForce automatisch de databaseschema's, stelt u in staat om beschikbare databasetabellen en -weergaven te selecteren, en herkent het de relaties tussen de tabellen.

[Het omzetten van MySQL naar PostgreSQL in MapForce](https://www.altova.com/images/mysql-to-postgresql-mapping.png)

Zodra u alle benodigde contentmodellen voor uw database-mapping heeft ingeladen, kunt u de mapping voltooien door eenvoudig verbindingslijnen tussen de bron- en doelstructuren te slepen.

Met de no-code aanpak van MapForce is het eenvoudig om veelvoorkomende eisen voor data-transformatie te vervullen, bijvoorbeeld:

- Converteer PostgreSQL naar MySQL
- Migreren van PostgreSQL naar MySQL
- Exporteer PostgreSQL naar MySQL
- Converteer MySQL naar PostgreSQL

### Data filteren en verwerken {#filtering}

Veel database-mappingen vereisen een transformatie van gegevens tussen de bron en de bestemming, gebaseerd op boolean-voorwaarden of SQL- en SQL/XML-statements. Mogelijk moet u logische vergelijkingen uitvoeren, wiskundige berekeningen maken of string-bewerkingen uitvoeren, controleren of databasegegevens een bepaalde waarde hebben, en andere wijzigingen aan de gegevens aanbrengen. In de bovenstaande screenshot worden de databewerkingfuncties weergegeven als de vakken tussen de lijnen die de bron- en doelgegevens verbinden.

De functies voor dataverwerking stellen u in staat om complexe databasekoppelingen in real-time uit te voeren, waardoor u aan een groot aantal praktische transformatiebehoeften kunt voldoen. 

### Directe databaseconversie {#convert}

Zodra uw mapping is gedefinieerd, stelt de ingebouwde MapForce-engine u in staat om de resultaten met één klik te bekijken en op te slaan.

Uw mapping van MySQL naar PostgreSQL genereert uitvoer in de vorm van SQL-scripts (bijvoorbeeld SELECT-, INSERT-, UPDATE- en DELETE-statements) die direct vanuit MapForce worden uitgevoerd op uw doeldatabase.

Nadat u de resultaten heeft bekeken, krijgt u de mogelijkheid om het proces van dataomzetting te automatiseren via MapForce Server. 

## Loggen (of traceren) van de output van de database

Met behulp van database-output tracing is het eenvoudig om alle wijzigingen die een mapping-project aanbrengt in de PostgreSQL- of MySQL-database vast te leggen, wanneer de mapping wordt uitgevoerd. 

Wanneer het traceren is ingeschakeld, worden gebeurtenissen zoals database-invoegingen of -wijzigingen, of fouten, vastgelegd in een XML-bestand. Dit bestand kan u later analyseren of op een geautomatiseerde manier verder verwerken. 

Het volgen van databaseactiviteit kan worden ingeschakeld op het niveau van de databasecomponent, de tabel, de opgeslagen procedure of het databaseveld. U kunt ervoor kiezen om alle berichten te volgen, of alleen fouten, of u kunt het volgen volledig uitschakelen. 

Zodra u het gewenste traceerniveau heeft geselecteerd, wordt het betreffende databasecomponent in het mappingproject uitgebreid met een XML-structuur die de logstructuur weergeeft. Als u de logbestanden liever in een ander formaat dan XML wilt, kunt u de gegevens uit het bestand mappen naar een ander gegevensformaat dat door MapForce wordt ondersteund (bijvoorbeeld een tekstbestand of zelfs een andere database). 

Wanneer u op de knop "Output" klikt om het resultaat van de mapping te bekijken, kunt u ook een voorbeeld zien van hoe het traceerlog eruit zal zien wanneer de mapping wordt uitgevoerd. 

[Database-tracking om logbestanden te genereren voor databaseconversie](https://www.altova.com/images/database-tracing.png)

## Behandeling van fouten bij database transacties

MapForce biedt ook ondersteuning voor database-transacties, waardoor een foutieve bewerking in de databaseconversie ongedaan kan worden gemaakt. In geval van een fout kan de bewerking dus worden teruggedraaid, en eventueel kan de rest van de conversie worden voortgezet. 

Soms treedt er een fout op die de rest van het proces van het mappen van een database niet verhindert, bijvoorbeeld wanneer bepaalde databasebeperkingen voorkomen dat ongeldige gegevens worden ingevoegd of bijgewerkt. 

Het inschakelen van transactieverwerking voor databases zorgt ervoor dat alle wijzigingen die door het databasecomponent worden aangebracht, worden omgeven door een transactie. In geval van een fout wordt deze transactie teruggedraaid. U kunt ervoor kiezen om door te gaan met de rest van de mapping of om de verdere uitvoering van de mapping te stoppen. U kunt transacties inschakelen op het niveau van het databasecomponent en op het niveau van de tabelactie. 

[Het mogelijk maken van database transacties voor foutafhandeling](https://www.altova.com/images/database-transactions.png)

Dit is erg handig wanneer de ontwerper van de data-omzetting geldige inkomende gegevens wil vastleggen en ongeldige gegevens simpelweg wil negeren.

## Geavanceerde database-mapping

Om de mogelijkheden voor databasemapping en -integratie aan te vullen, bevat MapForce een tabblad "Database Query" waarmee directe databasequery's kunnen worden uitgevoerd. Wanneer u verbinding maakt met een database via dit tabblad, toont MapForce de tabellen van de database in een hiërarchische boomstructuur in het venster van de browser. MapForce migreert niet alleen MySQL en PostgreSQL. Er is gespecialiseerde ondersteuning beschikbaar voor: 

- Vuurvogel
- IBM DB2 voor iSeries
- IBM DB2®
- Informix®
- MariaDB
- Microsoft Access™
- Microsoft® Azure SQL
- Microsoft® SQL Server®
- MySQL®
- Oracle®
- PostgreSQL
- Progress OpenEdge
- SQLite
- Sybase®
- Teradata
- MongoDB
- CouchDB 

[Raadpleeg de database terwijl u een conversiemapping voor de database definieert](https://www.altova.com/images/mapforce_database_query.png)

U kunt vervolgens het tabblad "SQL-editor" gebruiken om SQL-statements weer te geven, te bewerken en uit te voeren. Dit kan door bestaande SQL-bestanden te openen, of door SQL-statements vanaf nul te creëren met behulp van drag-and-drop functionaliteit en automatische suggesties.

U kunt uw SQL-script uitvoeren en de resultaten in tabelvorm bekijken. U kunt zowel de opgehaalde gegevens als het SQL-script afzonderlijk opslaan in aparte bestanden.

### Instellingen voor de database-sleutel {#db-key}

De database-sleutelinstellingen in MapForce stellen u in staat om te bepalen hoe primaire en externe sleutelwaarden worden toegevoegd aan een database die als doel dient voor de datamapping. U kunt zelf waarden voor de sleutels invoeren binnen MapForce, of u kunt het databasesysteem de taak laten om automatisch waarden te genereren.

In situaties waarin de primaire en/of externe sleutelrelaties niet expliciet zijn gedefinieerd in uw databasetabellen, stelt MapForce u in staat om deze relaties direct te definiëren, zonder dat dit invloed heeft op de brongegevens.

### Definieer de acties die op de database tabel kunnen worden uitgevoerd {#db-table-actions}

Wanneer u gegevens naar een database importeert, stelt MapForce u in staat om database-acties te selecteren waarmee u kunt bepalen hoe de gegevens naar de MySQL- of PostgreSQL-database worden geschreven. Dit geeft u volledige flexibiliteit om de meest geavanceerde taken op het gebied van gegevensbeheer te automatiseren.

Het gebruiksvriendelijke dialoogvenster "Database Tabel Acties" stelt u in staat om de kolommen binnen de geselecteerde tabel te definiëren die gebruikt worden om te bepalen welke actie (INVOEGEN, UPDATEN, VERWIJDEREN) in de database moet worden uitgevoerd.

Dit biedt ongekende flexibiliteit bij het bewerken van databasegegevens in reactie op XML, databases, EDI, XBRL, platte bestanden, Excel, JSON, JSON5, webdiensten of andere databasegegevens, allemaal via MapForce.

Leer hoe u database-tabelacties kunt configureren in MapForce

[Leer hoe u database-tabelacties kunt gebruiken in MapForce](https://www.youtube.com/watch?v=hHQmWdWVvgY)

### Ondersteuning voor SQL-opgeslagen procedures {#stored-procedures}

MapForce biedt uitgebreide ondersteuning voor opgeslagen procedures, zowel als invoercomponenten (procedures die resultaten leveren) of als uitvoercomponenten (procedures die gegevens invoegen of bijwerken). Bovendien kunnen opgeslagen procedures worden gebruikt als een functie-achtige aanroep, waardoor gebruikers invoergegevens kunnen aanleveren, de opgeslagen procedure kunnen uitvoeren en de uitvoergegevens kunnen lezen en toewijzen aan andere componenten.

Deze screenshot toont hoe een opgeslagen procedure in SQL Server wordt gebruikt om een XML-bestand te genereren. De procedure retourneert een tabel met gegevens die alle managers in de hiërarchie boven de opgegeven medewerker-ID weergeeft. Deze medewerker-ID wordt als een invoerparameter opgegeven – in dit voorbeeld de constante 67.

De parameter kan ook worden aangeleverd als een berekende waarde of als een data-element dat elders in de database is opgeslagen.

MapForce biedt een contextmenu waarmee gebruikers de opgeslagen procedure kunnen uitvoeren om de datastructuur weer te geven, die gebruikt wordt voor het maken van de mapping. Het uitvoeren van de getoonde mapping genereert de XML-uitvoer.

[Geavanceerde tools voor data-mapping omvatten ondersteuning voor opgeslagen procedures](https://www.altova.com/images/mapforce_stored_procedure.png)

### Sorteer de invoercomponenten van de database {#data_sorting}

SQL-query's die binnen de database worden uitgevoerd, zijn niet altijd voldoende voor complexe datatransformaties. MapForce biedt extra functionaliteit voor het sorteren van gegevens in de database via de SQL-WHERE/ORDER-component. Dit is handig voor database-invoer die extra verwerking vereist, of wanneer andere gegevens of voorwaarden in de transformatie de sorteervolgorde van de dataregels beïnvloeden.

### Ondersteuning voor NULL-waarden in database-tabelbewerkingen {#null-values}

Het dialoogvenster "Database tabelacties" ondersteunt het vergelijken van NULL-waarden. Vergelijkingen die rekening houden met NULL-waarden bieden een verbeterde manier om databases te verwerken die NULL-waarden bevatten. MapForce-gebruikers kunnen een database-mapping configureren, zodat de gegevensvergelijking op een manier plaatsvindt die rekening houdt met NULL-waarden, en dit gebeurt volgens regels die van toepassing zijn op het type database dat bij de mapping betrokken is.

De datamapping die aan de rechterkant wordt weergegeven, is bedoeld om de doel-tabel bij te werken zonder dubbele vermeldingen toe te voegen. Beide tabellen zijn zo gedefinieerd dat het e-mailveld een NULL-waarde kan bevatten, waardoor er in elke tabel overeenkomende naamvermeldingen met een NULL-waarde in het e-mailveld kunnen bestaan.

Door op het pictogram "Acties" naast de database tabel "TARGET" te klikken, wordt het dialoogvenster "Database Acties" geopend. Het vakje "NULL gelijk aan" naast het e-mailveld stelt MapForce in staat om NULL-waarden in de bron en de doelbestemming als gelijk te behandelen voor data-mappingdoeleinden, zelfs als ze volgens de database-regels niet als gelijk worden beschouwd.

[Database-mapping met ondersteuning voor null-waarden in MapForce](https://www.altova.com/images/mapforce-null-actions.png)

## Automatiseer het uitvoeren van database-mapping met MapForce Server

Altova [MapForce Server](../mapforce-server.md) bevat de ingebouwde datatransformatie-engine die is ontwikkeld voor MapForce en is aanzienlijk verbeterd om te kunnen functioneren in serveromgevingen. MapForce Server voert.. [gegevensomzettingen](mapforce.md#powerful) Voor het converteren van gegevens van PostgreSQL naar MySQL, of naar een combinatie van XML, databases, EDI, XBRL, platte bestanden, Excel, JSON, Shopify en/of webdiensten, worden vooraf verwerkte en geoptimaliseerde datamappingen gebruikt, opgeslagen in uitvoeringsbestanden. Deze mappingen zijn gedefinieerd in MapForce. MapForce Server brengt datatransformatie naar een hoger niveau met serverfunctionaliteiten, waaronder parallelle verwerking, multi-threading, bulk SQL-inserts, platformonafhankelijke ondersteuning en meer.

Voorbewerking maakt snellere prestaties en een kleiner geheugengebruik mogelijk voor de meeste datatransformaties. MapForce Server wordt beheerd door FlowForce Server en kan op verschillende manieren worden gebruikt: als een standalone configuratie die via de commandoregel wordt uitgevoerd, of programmatisch via een API.

Nadat een MapForce-mapping is ontworpen en getest, kan deze worden uitgevoerd door MapForce Server om bedrijfsprocessen te automatiseren die repetitieve datatransformaties vereisen.

[Automatiseer taken voor het in kaart brengen van databases met behulp van MapForce](https://www.altova.com/images/mapforce-server-execution-file.png)

MapForce verwerkt en optimaliseert datamappingen, slaat ze op in uitvoerbestanden voor MapForce Server, zodat MapForce Server ze via de commandoregel kan uitvoeren, en uploadt ze voor gebruik in taken van FlowForce Server.

Wanneer MapForce Server wordt beheerd door FlowForce Server, worden de datamappingen uitgevoerd als stappen binnen een FlowForce Server-taak, op basis van triggers die zijn gedefinieerd als onderdeel van die FlowForce Server-taak. Bijvoorbeeld, een nieuw XBRL-document komt in een map terecht, wat een meerstaps FlowForce Server-taak activeert. Deze taak valideert eerst het bestand met behulp van RaptorXML+XBRL Server, en voert vervolgens MapForce Server uit om bepaalde gegevens uit het XBRL-bestand te extraheren en deze in een database op te slaan.


## Call to Action

[Bestaande klanten kunnen hier de laatste versie downloaden en installeren.](download.md)
[Download nu een volledig functionele, gratis proefversie van 30 dagen van Altova MapForce!](download.md)

