AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Anwendung friert bei SQL ein
Thema durchsuchen
Ansicht
Themen-Optionen

Anwendung friert bei SQL ein

Ein Thema von schuetze09 · begonnen am 12. Apr 2005 · letzter Beitrag vom 14. Apr 2005
Antwort Antwort
Seite 1 von 2  1 2      
schuetze09

Registriert seit: 3. Mär 2004
113 Beiträge
 
Delphi 2005 Architect
 
#1

Anwendung friert bei SQL ein

  Alt 12. Apr 2005, 12:06
Datenbank: Oracle • Version: 9i • Zugriff über: ADO
Hallo,

ich habe mir ein kleines Programm gebastelt, mit dem ich SQL-Abfragen auf eine Datanbank absetzen kann. Nun ist mir aufgefallen, wenn eine Abfrage länger dauert und ich in der zwischenzeit mit einem anderen Programm arbeite und dann wieder in mein Abfrageprogramm springe um nachzuschauen, ob das SQL fertig ist, dass sich das Programm scheinbar aufgehangen hat. Es läßt sich erst wieder anzeigen, wenn mein SQL fertig ist.

Kennt jemand das Problem?
Hat jemand eine Lösung dazu?

MfG
schuetze09
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.355 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Anwendung friert bei SQL ein

  Alt 12. Apr 2005, 12:27
Bekanntes Phänomen. Ist nur über Threads zu lösen.
Peter
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Anwendung friert bei SQL ein

  Alt 12. Apr 2005, 12:34
Hi,

ist nicht nur über Threads zu lösen, sondern unter Umständen mit einem gute SQL-Statement )

Lemmy
  Mit Zitat antworten Zitat
schuetze09

Registriert seit: 3. Mär 2004
113 Beiträge
 
Delphi 2005 Architect
 
#4

Re: Anwendung friert bei SQL ein

  Alt 12. Apr 2005, 12:42
@Jasocul: und wie mache ich das?

@Lemmy: die SQL-Statement gebe ich aber erst in einem Synedit ein, dass heißt es sind keine vorgefertigten und optimierte.
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.355 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Anwendung friert bei SQL ein

  Alt 12. Apr 2005, 12:52
Ich bin leider nicht der Thread-Spezi, auch wenn ich die eine oder andere Kleinigkeit damit schon gemacht habe. Aber schau mal unter den Tutorials oder auf Luckies Homepage. Dort sollte auf jeden Fall etwas zu finden sein.
Peter
  Mit Zitat antworten Zitat
schuetze09

Registriert seit: 3. Mär 2004
113 Beiträge
 
Delphi 2005 Architect
 
#6

Re: Anwendung friert bei SQL ein

  Alt 12. Apr 2005, 12:58
@Jasocul: Danke, werde mal schauen.

Ansonsten sind weitere Tipps gern willkommen!

MfG
schuetze09
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Anwendung friert bei SQL ein

  Alt 12. Apr 2005, 18:09
Hi,

darum geht es nicht. Das Problem ist, dass viele, die von einer Desktop-Datenbank zu nem SQL-Server wechseln nciht verstehen, dass sie dabei die Art der Entwicklung umstellen müssen.

Beispiel:
War es unter einer Desktop-Datenbank ohne Probleme möglich mittels einer TTable-Komponente oder einer Query (Select * from Tabelle order by 1) durch den kompletten Datenbestand zu "zappen", ist das bei nem SQL-Server der sichere Tod! Bei 10 oder 100 Datensätze spielt das noch keine Rolle, im "Endausbau" beim Kunden kann so eine SQL mal schnell einige Sekunden/Minuten dauern, bis alle Daten einer Tabelle übers Netz auf den Client geschaufelt sind.


Aus diesem Grund ist es eigentlich nicht möglich eine konrete Aussage zu treffen. Kannst Du was zur SQL-Anweisung sagen, die so lange dauert? Was macht die?

Evtl. ist es auch möglich bei Oracle die Arbeit in eine StoredProcedure zu verlagern, so dass keinerlei Daten mehr übers Netz gezogen werden müssen. Kommt aber wie gesagt auf den Einsatzzweck an.

Lemmy

P.S: Unter den Demos von Delphi gibts ein Thread-Demo. Schau Dir das mal an, zudem die Hilfe, dann sollte das mit dem Thread auch klappen. Das wirklich komplizierte beim Thread ist vor allem die Synchronisation zwischen THread und Hauptanwendung, was bei DIr allerdings maximal ne Integerzahl für ne ProgressBar o.ä. sein sollte...

Lemmy
  Mit Zitat antworten Zitat
schuetze09

Registriert seit: 3. Mär 2004
113 Beiträge
 
Delphi 2005 Architect
 
#8

Re: Anwendung friert bei SQL ein

  Alt 12. Apr 2005, 19:10
@Lemmy:
Die SQL-Anweisung, die über eine komplette Tabelle läuft (select distinct xx, yy form xxyy).
Das Phänomen trat eben erst bei dieser Abfrage auf, da die Tabelle mehrere Mio's an Datensätzen hat. Die Ergebnissmenge wurde aber eben so benötigt. Hätte ich die Abfrage nicht so gestellt, hätte ich mein Problem wahrscheinlich erst viel später mitbekommen.


MfG
schuetze09
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: Anwendung friert bei SQL ein

  Alt 13. Apr 2005, 07:43
Guten Morgen,

dann habe ich ja gleich richtig geraten..... Weshalb brauchst Du die Ergebnismenge im Client? Kannst Du mir über die Applikation mehr Angaben machen? Wenn es öffentlich ein Problem ist, dann per Mail oder PN...

Lemmy
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.355 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Anwendung friert bei SQL ein

  Alt 13. Apr 2005, 09:06
@Lemmy:
Ich antworte schonmal für schuetze09. Es geht um ein Programm, wo der Anwender sein SQL-Statement selbst eingeben kann. Einige Dinge sind vorgefertigt andere nicht. Es ist also für den Programmierer nicht möglich, etwas im Voraus zu optimieren.
Daher meine Anregung, die Abfragen in einen Thread zu packen, damit man sogenannte Long-Running-Queries abbrechen kann.
Peter
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz