Avatar billede taiko Nybegynder
20. oktober 2003 - 11:20 Der er 24 kommentarer og
1 løsning

Access og FIFO

Er det muligt at får min tabel til at fungere som FIFO (First In First Out) ??

Ideen: En data logger skriver til en ACCESS fil og jeg vil have min tabel til at overskrive sig selv efter f.eks 6000 rækker. Men når jeg siger overskrive så må den altså ikke slette række f.eks 5000 før den kommer dernede med nyt data igen.

Har en ide om at dette muligvis skal laves igennem en makro...??? hvis ja nogen som måske har et evt. kode eks. jeg kan bruge??

takker på forhånd.
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 11:47 #1
Må jeg foreslå en sletteforespørgsel, der altid gemmer de sidste 5000 rækker, den kan du så kører en gang i døgnet.
Avatar billede taiko Nybegynder
20. oktober 2003 - 11:50 #2
Forstår ikke helt hvad du mener....
Det data der bliver logget er hvert sekund, hvilket jeg helst kun vil have 10 min af = 6000 rækker.
så bliver de 10 min overskrevet for hvert sekund, når de 6000 rækker er nået.
På denne måde vil jeg spare på HDD plads også.
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 11:51 #3
Du kan evt - hver gang du starter databasen - køre en sletteforespørgsel som kunne se således ud:
Delete From Din tabel Where ID not in (Select Top 5000 ID From Din tabel Order By GæstebogID Desc)
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 11:54 #4
Lav en formular som timer, der styrer denne sletteforespørgsel.
Delete From Din tabel Where ID not in (Select Top 6000 ID From Din tabel Order By ID Desc)
Jeg kan godt lave den som en demo.
Avatar billede taiko Nybegynder
20. oktober 2003 - 12:03 #5
Lyder meget fornuftigt.... men kunne godt bruge et eksempel på det du siger, er nemlig rimig n00b til ACCESS :-)

min tabel ser ca. sådan ud:

V1,V2,V3,Timestamp
1
2
3
4
5
x

Når den kommer til 6000 skal den skrive data på plads 1 igen osv.... men at uden at alle 6000 rækker bliver tømt/slettet ved skrivning på plads 1 igen.
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 12:24 #6
Så er der lavet en demo, hvor skal den sendes til.
Avatar billede taiko Nybegynder
20. oktober 2003 - 12:34 #7
Lyder kanon!
mail:
atb2000@hotmail.com
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 12:41 #8
Er sendt.
Avatar billede taiko Nybegynder
20. oktober 2003 - 12:42 #9
takker.... kigger lige på den og melder tilbage
Avatar billede taiko Nybegynder
20. oktober 2003 - 13:09 #10
Jeg er stadig igang med at rode med den.... har nok et par spørgsmål meget snart :-)
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 13:13 #11
Du er velkommen, men demoen burde vise det hele, beregningen står i formularen,men 600 poster  i minutted er meget.
Avatar billede taiko Nybegynder
20. oktober 2003 - 13:40 #12
Jeg har indstillet den til at slette hvert ½ sek. det meget i know men bliver nød til det pga min logging forgår meget hurtigt.
Men jeg får et "LÅSEFEJL" efter 1 min.... hvad kan det skyldes??? har læst i HJÆLP men hjalp ikke.
plus er der mulighed for at man kan kører denne forspørgelse automatisk når en tabel bliver lavet eller noget i den stil??
Men selve demoen virker meget godt i forhold til den ide jeg har, har bare justeret den en smule.
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 14:19 #13
Lav en makro til at starte den, så kan den åbnees skjult. Med det antal poster ville jeg lægge den i autoexec. Du skal så også havde en macro til at stoppe den, i forbindelse med driftstop hvor du måske vil se mere en et 1/2 min tilbage.
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 14:31 #14
Du har vel indsat disse 2 så du ikke skal trykke hvergang.
DoCmd.SetWarnings False
Det der står der nu
    DoCmd.SetWarnings True
I hændelse for timer udløb. Jeg kan godt indsætte det for dig , hvis det er.
Avatar billede taiko Nybegynder
20. oktober 2003 - 14:43 #15
har jeg ikke.... du skal lige huske på at jeg er ikke særlig velkendt med ACCESS :-)

prøver lige at se om jeg kan finde den
Avatar billede taiko Nybegynder
20. oktober 2003 - 14:45 #16
ehhhh... retter sagt så må du gerne gør det.
Kunne ikke lige finde den nogen steder i koden
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 14:46 #17
ok
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 14:56 #18
Er sendt.
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 15:17 #19
Ang. din "LÅSEFEJL", vil jeg lige tænke over om det er kritisk kapløb, med dit antal poster.
Avatar billede taiko Nybegynder
20. oktober 2003 - 15:22 #20
ok.... tja nu kører den ihvertfald uden at den popper frem med nogen fejl. Den laver godt nok nogle lange forspørgelser til tider, men det ser ikke ud til at skabe nogen problemer.

Vil rode lidt videre med det, og se om jeg evt kan "bikse" et makro sammen til den.
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 15:27 #21
Tak for poient.
Det var tiden jeg belastede med, der så var årsagen. Er det en start makro, så kan jeg da godt bakse sådan en sammen. Bare skriv.

Mvh Henrik13
Avatar billede taiko Nybegynder
20. oktober 2003 - 15:50 #22
Den makro må du meget gerne lave, hvis du får tid og lyst for jeg er sku ved at rode mig ud i noget værre snavs tror jeg :-)

Hvad mener du med "Tiden jeg belastede med"??? Er det sletnings perioden (60000??) eller et andet variable?? Nu er det så at det program jeg logger data med der "brokker" sig fordi den til tidere (ca. 2-3 min) ikke kan få lov til at skrive til filen (tror det er mens ACCESS sletter).
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 15:58 #23
Det jeg mente er, den tid du er to gange om at trykke OK.
Jeg laver to makroer til dig. en start og en luk.
Avatar billede henrik13 Nybegynder
20. oktober 2003 - 17:07 #24
Er sendt.
Avatar billede taiko Nybegynder
20. oktober 2003 - 20:35 #25
takker endnu en gang.... kigger på den imorgen.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester