20. oktober 2003 - 11:20Der 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??
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
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å.
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)
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.
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.
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.
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.
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.
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.
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).
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.