[Access] Groot aantal records replacen gaat mis

Pagina: 1
Acties:

  • Tsjipmanz
  • Registratie: Oktober 2000
  • Laatst online: 13-05 14:52

Tsjipmanz

Der Rudi ist da

Topicstarter
Hallo,

Een collega van mij heeft een vrij groot (tekst-)bestand geimporteerd in Access 2000 en wil nu met "Replace" een drive letter in een veld replacen door een andere tekst.

Dit gaat een tijdje goed, maar op een gegeven moment stopt Access met de melding "You can't replace the current value of the field with the replacement text". Hij vroeg mij om hulp en na een tijdje googlen kwamen we erachter dat het waarschijnlijk te maken heeft het het grote (plm 630.000) aantal records dat doorzocht wordt, en er is een kans dat de "maximum record limit" te laag staat, al zou dat bij een gewone tabel voor zover ik weet niets uitmaken.

Iemand een idee hoe dit probleem op te lossen? (een work around is bijvoorbeeld de tabel op te splitsen in kleinere stukken maar een echte oplossing is dit niet).

There's no such thing as a mistake, just happy accidents - Bob Ross
Relaxte muziek: altijd okee!
- Soulseek rulez -


  • Falcon
  • Registratie: Februari 2000
  • Laatst online: 12:51

Falcon

DevOps/Q.A. Engineer

Misschien is het verstandiger dat je weet terug gaat naar het tekst bestand en daar de tekst laat vervangen. Dan heb je niet te maken met eventuele recordslimiet en dergelijke.

Old skool notepad!

"We never grow up. We just learn how to act in public" - "Dyslexie is a bitch"


  • Tsjipmanz
  • Registratie: Oktober 2000
  • Laatst online: 13-05 14:52

Tsjipmanz

Der Rudi ist da

Topicstarter
The Real Falcon schreef op donderdag 22 september 2005 @ 12:07:
Misschien is het verstandiger dat je weet terug gaat naar het tekst bestand en daar de tekst laat vervangen. Dan heb je niet te maken met eventuele recordslimiet en dergelijke.

Old skool notepad!
Dat is ook een vrij coole workaround moet ik zeggen. Ik vraag me alleen af in hoeverre notepad zulke grote bestanden aankan, maar het is zeker het proberen waard. Thanks.

There's no such thing as a mistake, just happy accidents - Bob Ross
Relaxte muziek: altijd okee!
- Soulseek rulez -


  • Boss
  • Registratie: September 1999
  • Laatst online: 20:41

Boss

+1 Overgewaardeerd

Hoe vervang je nu? Via een SQL query?

Je zou ook met VBA aan de slag kunnen gaan, recordset doorlopen en vervangen waar nodig. Misschien werkt het langs die weg wel.

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it is an aesthetic experience much like composing poetry or music.


  • Tsjipmanz
  • Registratie: Oktober 2000
  • Laatst online: 13-05 14:52

Tsjipmanz

Der Rudi ist da

Topicstarter
Boss schreef op donderdag 22 september 2005 @ 15:24:
Hoe vervang je nu? Via een SQL query?

Je zou ook met VBA aan de slag kunnen gaan, recordset doorlopen en vervangen waar nodig. Misschien werkt het langs die weg wel.
Nee dit was een simpele search en replace, dat is dus het rare. Zou het kunnen dat MS Access in het geval van een search & replace op een tabel automatisch een update query uitvoert ofzo?

There's no such thing as a mistake, just happy accidents - Bob Ross
Relaxte muziek: altijd okee!
- Soulseek rulez -


  • Boss
  • Registratie: September 1999
  • Laatst online: 20:41

Boss

+1 Overgewaardeerd

Hoewel het natuurlijk niet zou moeten, kan ik me wel voorstellen dat de standaard search & replace optie ergens gaat vast lopen als het om 100.000-en records gaat.

Nu bedenk ik me dat volgens mij Replace geen functie is in SQL. Wat je dan kan doen is in een VBA module een eigen Replace functie maken (ReplaceX) en die de VBA functie Replace laten aanroepen. Het aparte is nl dat je sommige VBA functies niet kan gebruiken, maar een eigen geschreven functie weer wel.

Lastige uitleg die ik geef, maar ik hoop dat je er wat aan hebt.

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it is an aesthetic experience much like composing poetry or music.

Pagina: 1