Jump to content
  • 0

dubbele records verwijderen?


Martino

Question

Posted

Ik kan het nergens meer vinden, maar heeft er iemand een script om dubbele records op te sporen?

Hoe kan ik bijvoorbeeld een button aanmaken naast het veld van de klantnaam om, nadat de naam is ingevoerd, de database even wordt gecontroleerd of die naam al bestaat?

6 answers to this question

Recommended Posts

  • 0
Posted

Je kunt de knop naar een scriptje laten linken. Als je er op drukt ga je eerst zoeken naar mensen met dezelfde naam, dan tel je het aantal gevonden records. Als dit 1 is dan is er een persoon met dezelfde naam gevonden. Dan kun je een show message doen.

  • 0
Posted

Ik heb ergens op dit forum ooit een script gezien dat de database doorloopt dat automatisch alle dubbele records opspoort, ik heb al een half uur zitten klikkken maar ik kan het niet meer vinden. Heeft iemand dit nog?

Alvast bedankt mensen.

  • 0
Posted

Een andere methode is om een interne relatie (een relatie met hetzelfde bestand als waarin je de relatie maakt) te maken gebruik makend van het veld wat je wilt checken.

 

Met een calculatie check je het aantal gevonden gerelateerde records en geef je een melding als dit er meer dan 1 zijn:

---------------------

Case(Count(relatienaam::naamveld) > 1 ; "Er zijn meerdere mensen met deze naam.")

---------------------

 

Het nadeel hiervan is dat de naam van een persoon vaak niet identiek wordt ingevoerd, en dat is wel nodig om de relatie en daarmee de waarschuwing te laten werken. Ikzelf gebruik daarom de combinatie van postcode en huisnummer om via het voornoemde calculatie-veld mijzelf te attenderen (ik doe een ledenadministratie) op de mogelijke dubbele invoer.

 

Om dubbele records te verwijderen kun je deze techniek ook gebruiken: je zoekt dan de records waarbij het calculatie-veld een uitkomst geeft.

In een script sorteer je de gevonden reeks, en met een loop waarin je gebruikt maakt van een global om het unieke gegeven te bewaren, verwijder je de dubbele records.

  • 0
Posted

Wat ik mis in de voorstellen is de simpele zoekfunctie 'find duplicates', oftewel '!' (uitroepteken)!!!

Met wat creativiteit kan je daar vast ook wel wat mee.

  • 0
Posted

Het probleem van dubbele records kan erg complex zijn, afhankelijk van de graad van precisie waarmee de gegevens ooit ingevoerd werden. Daarom is het beter dubbels te voorkomen. De methode is nogal simpel en komt er in grote lijnen op neer dat het aanmaken van nieuwe records gebeurt met script-begeleiding: je wordt naar een invulscherm gebracht waar enkele belangrijke gegevens ingevuld worden. Dat gebeurt echter in globale velden, zonder dat een nieuw record werd aangemaakt. Bij een klik op Verder kopieert het script de tijdelijke waarden in Find Mode en controleert of de gegevens al bestaan. Indien niet, dan wordt meteen, zonder dat de gebruiker dat merkt, een nieuw record aangemaakt en worden de globale gegevens meteen op hun definitieve plaats gezet in de juiste velden. Indien echter wel iets gevonden wordt, en soms zelfs meerdere records, dan wordt dat getoond samen met een message die vraagt of het wel echt nieuwe gegevens zijn. Bij "Nee" wordt de reeds bestaande record getoond, bij "Ja" wordt toch een nieuw record aangemaakt en gaan de globale gegevens weer naar hun definitieve plaats. Deze methode bespaart heel wat kopzorgen omdat ze perfect inspeelt op één van de allereerste vereisten voor een databank: database integrity.

  • 0
Posted

Je kunt ook gewoon een record aanmaken en dan 1 extra veld maken waarmee je aangeeft dmv. 1 of 0 of de record al gecontroleerd is op gelijken. Dan is het eenvoudiger om een keer een veld bij te maken.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...