Avatar billede dougheffernan Nybegynder
12. marts 2007 - 09:08 Der er 6 kommentarer og
1 løsning

Forbedre forespørgselshastighed

Systemet er en Access Frontend, som connecter til en Navision 2.01 database.
I Navision er der defineret nøgler, som gør søgninger hurtige, men når jeg kører en forespørgsel i Access, er der jo tale om sammenkædede tabeller og så kan jeg ikke udnytte nøglerne der er på tabellerne (og ej heller definere mine egne), vel?
En opgradering til Navision 5, som kører på SQL Server, ligger ½-1 år ude i fremtiden...
Avatar billede jensen363 Forsker
12. marts 2007 - 09:11 #1
Mig bekendt ... ja ...
Avatar billede jensen363 Forsker
12. marts 2007 - 09:13 #2
Eller rettere, nej ... det mener jeg heller ikke man kan ... men du kan benytte de sammenkædede som tabeloprettelsels-grundlag for tabeller hvor du kan lave disse unikke nøgler
Avatar billede dougheffernan Nybegynder
12. marts 2007 - 09:26 #3
Ja, som det er p.t. henter jeg poster fra den sammenkædedet tabel ind vha. en tabeloprettelses-forespørgsel, ud fra en valgt dato, men det er selve det at hente dataene som tager tid, bare for en enkelt dato, tager det ca. 15 min. Der er tale om en tabel med 2.3 mill. poster i, hvoraf mit program skal bruge ca. 6-7.000 poster. Navision-tabellen bliver opdateret hele tiden og jeg har ikke lyst til at lave et job som henter de ønskede data ind i en SQL Server database tabel hver nat, vil gerne have dataene liggende kun ét sted.
Avatar billede terry Ekspert
12. marts 2007 - 09:31 #4
Dont know much about Navision but have you tried using pass-through queries?
When you are in query design view right click on the area with the tables in and then choose SQL specific from the menu. Now you see Pass-Through.

In this mode you have to write the SQL so that it is in Navision syntax, not Access. The SQL gets sent to the server and is executed there. This will very likley help in performance.
Avatar billede terry Ekspert
12. marts 2007 - 09:33 #5
When you execute a query in Access ALL records are dragged over the network whereafter Access filters out those meeting the criteria. Using Pass-through queries only those meeting the criteria are dragged over the network.
Avatar billede dougheffernan Nybegynder
12. marts 2007 - 11:01 #6
Yeah, tried the Pass-Through query - it said something like it couldn't find the table...but that was the Access query I just "converted" to Pass-Through - have NO idea what the Navision query syntax would look like.....(it's an ODBC connection, of course)
Avatar billede terry Ekspert
12. marts 2007 - 11:44 #7
You could start by making a very simple select just to see if you can make a pass-through query.
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