Abfrage über ODBC auf MsSQL 7 langsam

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
vonGottgeschrieben
Beiträge: 1
Registriert: Do 19. Sep 2013, 13:36

Abfrage über ODBC auf MsSQL 7 langsam

Beitrag von vonGottgeschrieben »

In meiner Lazarus Db-Anwendung greife ich über ODBC auf einen MSSQL Server 7 zu.
Die Abfrage (open) über 3 Tabellen dauert ca. 2 sec. Da die Tabellen nicht so riesig sind, sollte das viel, viel schneller gehen (Query analyser über Netz macht die Abfrage in Millisekunden).
Hat jemand eine Idee, wo man noch was drehen kann, damit das schneller geht?

Antrepolit
Beiträge: 340
Registriert: Di 12. Sep 2006, 08:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Re: Abfrage über ODBC auf MsSQL 7 langsam

Beitrag von Antrepolit »

Das ist normal. ODBC ist eben "universell" aber dafür langsam, dafür ist es bekannt. Open sagt nicht viel aus. Die Frage ist, wieviele Datensätze du abfragst.
Grüße, Antrepolit

care only if your os is really burning

Eb
Lazarusforum e. V.
Beiträge: 240
Registriert: Di 5. Feb 2008, 15:32
OS, Lazarus, FPC: Linux Mint - Laz 2.2.0
CPU-Target: 64Bit
Wohnort: Stuttgart

Re: Abfrage über ODBC auf MsSQL 7 langsam

Beitrag von Eb »

Du könntest versuchen auf dem Datenbankserver einen View zu erstellen, der die 3 Tabellen joint
und deine Abfrage dann auf diesen View machen.

hde
Beiträge: 556
Registriert: Mi 11. Aug 2010, 02:56

Re: Abfrage über ODBC auf MsSQL 7 langsam

Beitrag von hde »

Antrepolit hat geschrieben:Das ist normal. ODBC ist eben "universell" aber dafür langsam,
eben, aber warum muss es denn ODBC sein?

hde

gocher
Beiträge: 298
Registriert: Di 23. Nov 2010, 23:41
OS, Lazarus, FPC: Ubuntu/Win, Lazarus trunk, FPC trunk
CPU-Target: 32Bit/64Bit
Wohnort: Geldern
Kontaktdaten:

Re: Abfrage über ODBC auf MsSQL 7 langsam

Beitrag von gocher »

vonGottgeschrieben hat geschrieben:In meiner Lazarus Db-Anwendung greife ich über ODBC auf einen MSSQL Server 7 zu.
Die Abfrage (open) über 3 Tabellen dauert ca. 2 sec. Da die Tabellen nicht so riesig sind, sollte das viel, viel schneller gehen (Query analyser über Netz macht die Abfrage in Millisekunden).
Hat jemand eine Idee, wo man noch was drehen kann, damit das schneller geht?
Am Besten ist es immer wenn ein Code-Beispiel vorliegt, wenn Schrauben existieren :) kann man dran drehen, wenn nicht ist es problematisch! In einem anderen Thread wurde die Problematik der Datenbank-Zugriffe schon mal beleuchtet, oft liegt der Fehler halt gar nicht im Zugriff sondern im Umgang mit den Daten, oder auch in der Zeitmessung!
MfG Gocher
akt. Projekt: Webserver(HTTPS HTTP/2) mit integrierten CMS in Free Pascal - www.gocher.me

Antrepolit
Beiträge: 340
Registriert: Di 12. Sep 2006, 08:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Re: Abfrage über ODBC auf MsSQL 7 langsam

Beitrag von Antrepolit »

Nebenbei bemerkt ist der MSSQL Server 7.0 schon 15 Jahre alt. Und wer weiß, wie alt die Hardware darunter ist...
Grüße, Antrepolit

care only if your os is really burning

gocher
Beiträge: 298
Registriert: Di 23. Nov 2010, 23:41
OS, Lazarus, FPC: Ubuntu/Win, Lazarus trunk, FPC trunk
CPU-Target: 32Bit/64Bit
Wohnort: Geldern
Kontaktdaten:

Re: Abfrage über ODBC auf MsSQL 7 langsam

Beitrag von gocher »

Also meines Erachtens ist die Datenbank meistens egal, wenn es um simple Abfragen geht, da kann die Datenbank auch schon mal aus dem letzten Jahrtausend sein :). Ich weiß nicht bis wann wir den letzten MSSQL 7.0 Server im Einsatz hatten, aber MSSQL -Lizenzen sind teuer und wenn er noch läuft und vor allem wir wissen auch nicht was sonst noch drann hängt.
Code zeigen, mit Zeitmessung, bitte, bitte!
MfG Gocher
akt. Projekt: Webserver(HTTPS HTTP/2) mit integrierten CMS in Free Pascal - www.gocher.me

Antworten