05. september 2005 - 13:01Der er
20 kommentarer og 3 løsninger
langsom database efter opdeling
Hej eksperter
Jeg har lavet en database, som jeg sluttede af med at opdele i en frontend og en backend via den indbyggede guide. Backenden ligger på en server, og der ligger en lokal frontend på hver pc. Men problemet er, at den er blevet utrolig langsom efter dette. Både når man skal åbne div. formularer og rapporter, men også hvis man vil ændre en formular, og man f.eks. skal gemme den i designvisning. Når jeg åbner den gamle database, hvor både tabeller og formularer ligger i, kører den som man kan forvente. Bør jeg bruge en database hvor alt ligger i, eller bare leve med de lidt langsomme svartider. Eller det optimale, er der en der kan fortælle mig, hvorfor min database kører så langsomt?
nej, databasen har hele tiden ligget på en anden computer. Jeg har så opdelt den, og smidt en lokal frontend ud på hver computer. Men det der undrer mig mest, er at en ting som at gemme en formular, efter man har ændret noget i designvisning, godt kan tage en 15-20 sek., mens det ikke engang tager et sekund, i den gamle db, med tabeller i.
The best configuration is to have the frontend on your local PC and the backend on the server.
Loading the frontend from your local PC should be faster than dragging it over the network first. There may be a slight overhead dragging the data over the network too, but if your database is designed correctly with indexes on the fields you use for searching, then it shouldnt be so bad.
When in design mode Access needs to verify that the changes you make in the frontend comply with the data in the backend, so again this is going to take longer, but when in normal mode it should not be a problem.
hej terry. Jeg har det også som du har beskrevet, med en frontend på hver pc. Men eksempelvis, tager det ca. 1-2 sekunder at åbne en formular i den "gamle" db, hvor alt, inkl. tabeller er i. Mens i den opdelte, tager det ca. 6-8 sekunder.
hvor stor indflydelse bør det have, at der er flere brugere på databasen. For hvis der kun er en bruger på databasen, kører det nogenlunde, men når der er 3-4-5 brugere på, begynder det at tage lidt over 5 sekunder at åbne en formular. Det skal også lige tilføjes, at jeg fint kan åbne en ubundet formular.
Look at the question "Why is Access 2000 slow for more than one user?"
Synes godt om
Slettet bruger
06. september 2005 - 09:03#12
Jeg har haft lignende problemer med hastighed eller mangel på samme. Løsningen lå i forespørgslerne, hvis du har mange forespørgsler og der er forespørgsler på forespørgsler, så sørg for at du afgrænser først og laver beregningerne på den afgrænsede datamængde. Jeg havde selv en responstid på omkring 9 sek. i noget, som lignede en god db, men efter omlægning af forespørgslerne kom jeg ned på 1 sek.
Tak for et godt link Terry! Glæder mig specielt til at prøve om det giver bedre performance at oprette en kontinuerlig forbindelse fra alle frontends til backenden.
Jeg har konstateret en betydelig reduktion i performance på opdelte databaser, og har fundet ud af, at kombobokse er synderen. Hvis du bruger en kombobox til at hente data til én tabel fra en anden, og første kolonne er sat til 0 cm, giver det problemer. Dette scenarie gælder hvis du fx. i en ordrelinietabel vil hente et produktnr via en kombobox, der viser produktteksten men gemmer produktnummeret i ordrelinietabellen. Hvis du i stedet viser og gemmer produktnummeret (eller produktteksten) stiger performance på formularen betydeligt. Tjek dine kombobokse !!
jesperfjoelner-Super link. Indeholder lige lidt mere end terrys. Bl.a. at brugen af Dcount nedsætter performance. Det har også været det, der har været tilfælde i min database. Efter jeg har udkommenteret Dcount sætningen, tager det 3-4 sekunder hurtigere at åbne en formular.
schlamovitz-Tak for tippet, men som sagt var det Dcount der var synderen i mit tilfælde.
Et lille tillægsspørgsmål. Hvordan er den bedste måde at tælle antal poster så, hvis man ikke kan bruge Dcount?
Terry, tak for hjælpen. Selvom jesperfjoelner kom med det link, der havde den reelle løsning på mit problem, har jeg fået så mange gode input og tips, der har optimeret min database på mange andre måder. Så hvis i alle dem der er kommet med tips og gode ideer lige smider et svar, tilføjer jeg lidt ekstra point, som jeg så vil dele ud. Tak for hjælpen allesammen
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.