23. december 2009 - 09:51Der er
12 kommentarer og 1 løsning
Tildel fortløbende værdi til records
Hej alle. Ved at denne har været oppe nogen gange men kan ikke rigtig finde svaret jeg leder efter. Jeg har en tabel hvor jeg gerne vil have tilføjet et fortløbende nummer. Jeg kan ikke bruge ID auto feltet da det skal være et 5 cifret nummer og jeg selv vil bestemme hvor det skal starte.
Eksempelvis at starte fra 50000, 50001 osv. Nummeret skal tilføjes efter tabellen er importeret fra excel. Funktionen skal kunne udføres gentagne gange (altså ved nye data). En der kan komme med et godt bud? Meget gerne så simpelt som muligt.
Skal nænves at jeg ikke kan skrive VBA, så meget gerne blot som et led i en opdateringsforespørgelse.
Når du har tildelt en post et autonummer, ændres dette ikke ved komprimering. Men du kommer nok ikke uden om en formular med noget VBA.
Du skriver ikke noget om, at tabellen skal tømmes for poster ved en ny import. Er det tilfældet, kan du lave en variabel med en inputboks til at bestemme starten på nummereringen, og derefter ind i en lække der tæller op fra denne variabel.
Hej Mugs, altid godt at have dig på banen :-) (ment som stor ros til din viden).
Tabellen benyttes til at holde adresser som bruges til forskellige udsendelser af reklame breve. Det vil sige at ved hver udsendelse vil tabellen blive tømt for data og nye bliver lagt ind, et eller andet sted i processen vil jeg derfor gerne kunne tildele hver brev en unik kode på 5 cifre som starter hvor jeg ønsker det.
Som tidligere mener jeg ikke, at du kan komme uden om noget VBA. Hvia du har mod til at prøve, kan jeg strikke et lille eksempel sammen, hvis du lægger din e-mail.
Er der noget tidsfrist, jeg er temmelig hængt op med juleforberedelser, men d 26 om aftenen er det ovre, og jeg er hjemme igen.
Hej Mugs. Nej der er ingen tidsfrist, det er et større projekt jeg arbejder på og kan sagtens lade den del ligge lidt tid. Du må meget gerne prøve at sende mig et eksempel på mugs snabela 0809.dk
Hej Mugs, det virker fuldtstændig som i dit eksempel nu, bortset fra at data køre enormt langsomt. I dit eksempel får 50 rækker tildelt værdi i løbet af et sekund, men i min egen database bruger koden 2-3 sekunder pr. post på at give værdier.
Det kan dog være på grund af det citrix miljø jeg sidder og arbejder på, det må jeg teste når jeg er tilbage efter julen hvor jeg kan lave test på indenfor citrix og udenfor.
Just in case det ikke er citrix, kan der være nogen felt egenskaber som jeg ikke har taget højde for?
Nå så fik jeg allerede testet lidt... typisk mig egentlig. Ligeså snart jeg fjernede data så der kun var 30-40 poster i tabellen kørte det som en leg, men når der er 20 - 30.000 så går det super langsomt. Har du et forslag til hvad jeg kan gøre?
Hvis du sletter poster er det nok nødvendigt at komprimere db inden du foretager dig yderligere.
Prøv at måle db's størrelse med alle poster, slet dem og mål størrelsen igen. Kompromer derefter og mål igen. Årsagen til hastigheden (eller mangel på samme) kan være, at den plads de slettede poster optog, ikke bliver frigivet, før du har foretaget en komprimering.
Koden indeholder ikke nogen langsommelig kode, og det er kun en simpel tæller, der ikke burde være skyld i en langsom afvikling.
Tadaaa - det var lige præcis det der skulle til, udtrolig som simple ting nogen gange kan virke.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.