Re: Access2SQL Performance Probleme

Tech-Archive recommends: Fix windows errors by optimizing your registry



Hallo Alexander,

Alexander Baumgart <al.baumgart@xxxxxx> schrieb ...
> ich habe eine bestehende Anwendung von Access auf MSDE als DB Engine
> umgestellt. Leider ist die Performancen eher schlechter gewurden.

Ich will Dich ja nicht schockieren:
Das ist bei kleinen Benutzerzahlen oft die Regel denn eine Ausnahme,
insbesondere wenn die Zugriffe wie bisher durchgeführt werden.

> suche ich nach Wegen dieses zu verbessern. Da ich bisher keinerleie
> Vorkenntnisse habe suche ich nach Hinweisen wo man drehen koennte.
> Momentan hackt es generell bei Einfuegen von Datensaetzen: Dieses
> geschieht momemtan per ADDNEW :

Recordsets sind in vielerlei Hinsicht eine Bremse.
Du solltest die Client-Bibliothek nutzen (hatte ich m. W. in einem
vorigen Thread schon erwähnt) und wo möglich mit adLockBatchOptimistic
arbeiten.
Wenn Du nur einfügst, solltest Du eine restriktive Klausel ala
WHERE 0=1 verwenden um einen unnötigen Datenabruf zu vermeiden.

> Frage: Wo liegen die Bootlenecks beim Einfuegen von Daten auf einen
> SQL Server aus einer Datei ?

Je AddNew...Update wird daraus ein einzelner INSERT Befehl. Und wo
Access die Daten lokal im wesentlichen binär bearbeiten kann, muss
der SQL Server die Anweisung parsen usw...

> In einigen kleineren Projekten habe ich
> genrell immer INSERT INTO + Execute Methode eines Command-Objects
> benutzt. Koennte das Vorteile bringen ?

Das bringt etwas aber meist nicht die Welt.
Da Du C++ verwendest, kannst Du mehr rausholen, wenn Du die
IRowsetFastLoad Schnittstelle verwendest. Die nutzt die gleichen
SQL Server Schnittstelle wie bcp / BULK INSERT. Allerdings ist
das aufwändiger.

> Inwieweit kann ich Fehler beim Anlegen der DB als solcher gemacht
> haben ? Momentane Groesse der DB ~10MB.

Bei 10 MB ist da wohl kaum viel verkehrt zu machen.
Generell ist es aber nunmal so, dass der SQL Server seine Stärken
erst bei grösseren Datenmengen ausspielen kann und vor allem den
wesentlichen bessern Abfrageprozessor hat.

Gruss
Elmar

.



Relevant Pages

  • Re: benutzerdefinierte Objekte ausblenden
    ... > also ich habe einen SQL Server im Internet, ... > das mit Access, ODBC oder sonst wie machen, spielt keine Rolle. ... Spätestens wenn die Reisedatenbank auch personenbezogene Daten ... Einzige Option die das begucken verhindert wäre die Option ...
    (microsoft.public.de.sqlserver)
  • re: ACCESS/SQL SERVER
    ... "DESARROLLANDO APLICACIONES CLIENTE SERVIDOR CON MS ACCESS Y SQL SERVER": ...
    (microsoft.public.access.adp.sqlserver)
  • Re: Access in Office 12.0
    ... Access Gruppe (Jet war vorher der Windows Gruppe zugeordnet) VBA gibt ... Das SQL Server Team investiert mehr darauf, dass Entwickler zum SQL Server Express hin programmieren. ... MAKROS extrem aufzuwerten, vorallem auch in der ...
    (microsoft.public.de.access)
  • Re: SQL 2005 - Eingabemasken?
    ... Denk man kann die dann auch an den MS SQL hängen. ... Wobei Du auch auf Access Datenbanken mit .NET ... Benutzerzahlen eher Probleme als ein SQL Server. ...
    (microsoft.public.de.sqlserver)
  • Re: DANKE: Re: Access 97 Zugriff...
    ... > paget, d. h. es werden bei jedem Zugriff auch andere Daten blockiert, ... wieso also nicht bei Access. ... Access Anwendung auf SQL Server umgestellt. ... Jet und eine Backend im MDB Format machst, ...
    (microsoft.public.de.access.clientserver)