Dit artikel biedt oplossingen voor het omgaan met fout 'Record is te groot' in MS Access.
Je bent misschien wel eens in een situatie terechtgekomen waarin je een ogenschijnlijk klein bestand in je Access-database probeert te importeren, maar het blijkt toch niet zo klein te zijn als je dacht. Dit wordt duidelijk wanneer je een waarschuwing krijgt met de tekst 'Record is te groot', foutcode 3047. Dit kan een complete verrassing zijn, omdat de bestandsgrootte in werkelijkheid heel klein kan zijn. Om deze fout op te lossen, moet je eerst begrijpen wat de oorzaak ervan is. Dat is dan ook ons eerste aandachtspunt. 
Oorzaken achter de fout
Waar veel Access-gebruikers niet van op de hoogte zijn, is dat er een limiet is voor Access-records waardoor ze niet meer dan 2000 tekens mogen gebruiken voor de 'werkelijk beschikbare ruimte'. Wat betekent dat een gebruiker slechts 4000 bytes Unicode heeft gekregen, dit is het soort limiet dat nauwelijks een uitdaging is om te overschrijden. Veel van de keren dat ze deze limiet overschrijden, zijn puur onbedoeld, waardoor de zich niet bewuste gebruiker met een andere complexe fout moet omgaan.
Vooruitlopend op de oorzaken achter deze fout, zullen we nu proberen de mogelijke oplossingen voor een bepaald probleem te begrijpen.
Omgaan met de fout
Enkele van de algemene oplossingen die u kunt gebruiken wanneer u getuige bent van deze fout, worden hieronder uitgelegd.
Probeer de tabel opnieuw te definiëren Een van de meest gekozen oplossingen voor dit probleem is om de tabel volledig opnieuw te definiëren. Dit houdt niet alleen in dat oude en overbodige velden worden verwijderd, maar ook dat er een paar nieuwe velden worden toegevoegd.
- Maak gebruik van memovelden - U kunt proberen om met fout 3047 om te gaan door gebruik te maken van memotypevelden en niet van teksttypevelden. U kunt het veldtype instellen op memo door de waarde van de eigenschap van het veldtype in te stellen op 12. Als u het op 10 heeft, krijgt u weer een tekstveld. Als u bij een memoveld de opgegeven limiet overschrijdt, zal Visual Basic gebruik maken van een aparte pagina om deze velden in de database te plaatsen.
- Maak gebruik van de DoCmd.TransferSpreadSheet-methode - Volgens de 2016-editie van MS Access is de limiet van elke tabel vastgesteld op 4000 records, met een totale grootte van 2 GB. Dus als u uiteindelijk een tabel maakt die deze limiet overschrijdt, zult u met deze fout te maken krijgen.
Workaround
Afgezien van het gebruik van een Toegang tot fix tool of manieren om met de bovenstaande fout om te gaan, kunt u ook gebruik maken van een tijdelijke oplossing waarbij u gebruikmaakt van een Excel-spreadsheet en deze weer aan de tabel koppelt. Dit zal u toelaten om een query te hebben die meer dan 4000 records kan opslaan en exporteren naar Excel wanneer dat nodig is, ook dat zonder fouten.
Het belangrijkste om hier echter in gedachten te houden, is ervoor te zorgen dat u gebruik maakt van VBA bij het exporteren van massaquery's
Auteur Introductie:
Vivian Stevens is een expert op het gebied van gegevensherstel in DataNumen, Inc., de wereldleider in technologieën voor gegevensherstel, waaronder SQL Server reparatie en Excel-herstelsoftwareproducten. Voor meer informatie bezoek www.datanumen.com
Probeer de tabel opnieuw te definiëren Een van de meest gekozen oplossingen voor dit probleem is om de tabel volledig opnieuw te definiëren. Dit houdt niet alleen in dat oude en overbodige velden worden verwijderd, maar ook dat er een paar nieuwe velden worden toegevoegd.