U bevindt zich nu op een technische pagina over de software Mercator. Deze pagina bevat specifieke informatie die bestemd is voor professionals van de software Mercator. Wenst u naar algemenere informatie over Mercator door te gaan?


   Deze vraag niet meer stellen

Code editor: de bulk functie van een lokaal bestand met een SQL tabel

0000002407     -      14-12-2016

In de SQL code editor, is het mogelijk om een bulk load uit te voeren van een tabel die opgeslagen is in een lokaal bestand (Excel of XML) naar een tabel op de SQL server. Dit gebeurt via deze knop:

Het proces begint met de selectie van een lokaal bestand. Als het bestand in Excel formaat is, hoort het te voldoen aan de gebruikelijk omvang van Mercator (de eerste lijn bevat de naam van de kolommen). U kunt de inhoud van het geïmporteerde bestand bekijken. Vervolgens stelt Mercator voor om de parameters te bepalen die de SQL tabel zullen bepalen bij de totstandkoming:

  • "Kolom Bestem." Om de kolom naam in te geven die u wilt gebruiken in de SQL tabel
  • "Doeltabel" u kunt de naam kiezen van de SQL tabel. Standaard is de naam van de SQL tabel gelijk aan de naam van het geïmporteerde bestand.

Classificatie concept (vergelijking)

In SQL, komen de karakter velden overeen met een classificatie (vergelijking). Standaard kunt u strings niet vergelijken, tenzij ze dezelfde classificatie hebben. Daarom kan Mercator de classificatie van alle kolommen van het karakter type specifiëren in de derde kolom van dit scherm. Deze waarde wordt altijd geïnitialiseerd. Als we een tabel importeren die een structuur heeft die lijkt op de standaard tabel van Mercator, dan kunnen we de classificatie van elke tabel in de bulk tabel identiek maken, voor de velden met dezelfde naam als die van de standaard tabel. Om dit te doen, selecteert u de tabel “classificeer deze tabel” in de drop-down. Bijvoorbeeld: we bulken een tabel die de enkel de velden van de STOCK tabel ophaalt en daarna kiezen we in de drop-down in kwestie “STOCK".

De correcte vaststelling van de classificatie is van essentieel belang in het geval dat er tabellen samengevoegd worden op de velden met het karakter type.

Noties van SQL verbindingen en transacties

Elk SQL tabblad van de command editor bezit zijn eigen verbinding met de SQL server. Daarom is er een tijdelijke bulk tabel (naam begint met #) in een tab die niet zichtbaar is tijdens het uitvoeren van een andere SQL query in een ander tabblad. (Zij is er echter altijd als de SQL verbindingspool, die beheerd wordt door het .NET framework, toegeschreven worden aan dezelfde fysieke verbinding)

Als er een transactie aan de gang is in dit tabblad, dan zal de tabel gebulkt worden in deze transactie. De tabel is niet definitief tenzij u commit aan de transactie. Ze wordt vernietigd in het geval van een rollback.

Verwijderen van gebulkte tabellen

Standaard bij het sluiten van een SQL tab met een bulk load van één of meerdere tabellen, stelt Mercator voor om deze tabellen te verwijderen; hij doet dit om gebruikers aan te moedigen de database niet te overbelasten met tabellen die niet langer bruikbaar zijn. Natuurlijk is het altijd mogelijk om het verwijderen te weigeren, tabel per tabel, om ze permanent in de database te houden.

Belangrijke opmerking

De bulk load geeft geen gegarandeerde kwaliteit voor de gedownloade bestanden in de database. Deze mogelijkheid moet dan ook niet gezien worden als een manier om “alles en nog wat” te laden. Wij herinneren u er hier aan dat alle gegevens met betrekking tot de documenten van het commercieel beheer, de inventarissen, overdracht van depots, rekening afschriften, CRM acties, … nooit op deze manier gedownload mogen worden, maar altijd met de overeenkomstige engines gebruikt horen te worden.

 

Gebruiksvoorbeeld:  Hoe kan ik de instellingen van een informatiebestand van één Mercator naar een andere overdragen?