AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Query wird nicht vom Programm ausgeführt

Query wird nicht vom Programm ausgeführt

Ein Thema von Ykcim · begonnen am 12. Mär 2013 · letzter Beitrag vom 13. Mär 2013
Antwort Antwort
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
856 Beiträge
 
Delphi 12 Athens
 
#1

AW: Query wird nicht vom Programm ausgeführt

  Alt 12. Mär 2013, 17:59
Genau das habe ich ja gemacht, um das Query-Statement auszulesen. Mein Programm hängt sich auf. Ich habe keine Ahnung warum. Ich werde nachher mal gucken, ob es an allen 3 Bedingungen liegt, oder ob ich vielleicht die eine Bedingung herausfinde an der es liegt.

Komisch ist nur, dass der MySQL Server mit der Anweisung kein Problem hat, wenn ich einen Breakpoint auf open lege, das Statement herauskopiere und auf dem MySQL-Server direkt ausführe.

Kann das an den Komponenten liegen? Ich dachte nur, das die UniDac gut sind... Und bis jetzt hatte ich auch noch keine Probleme mit Ihnen...

Danke für die Unterstützung
Patrick

Ich habe es mal eben geprüft:

Das Problem passiert durch die Bedingung " and Rueckm=1". Aber wie gesagt, direkt auf dem Server habe ich keine Probleme...
Patrick

Geändert von Ykcim (12. Mär 2013 um 18:07 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#2

AW: Query wird nicht vom Programm ausgeführt

  Alt 12. Mär 2013, 18:54
Wieviele Datensätze kommen denn zurück 5,50,500 oder ???

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
856 Beiträge
 
Delphi 12 Athens
 
#3

AW: Query wird nicht vom Programm ausgeführt

  Alt 12. Mär 2013, 20:34
In dieser Abfrage geht es darum, dass wenn ein Datensatz zurückkommt, dass dann die nachfolgende Procedure übersprungen wird. Große Datenmengen sind also nicht das Problem. In dem aktuellen Beispiel wird auch kein Datensatz zurückgeliefert, so wie es auch sein muss...
Patrick
  Mit Zitat antworten Zitat
Benutzerbild von Memo
Memo

Registriert seit: 19. Aug 2003
509 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Query wird nicht vom Programm ausgeführt

  Alt 13. Mär 2013, 07:33
Bei den UniDAC sollte es einen DBMonitor geben. Damit kann man sehen welchen Befehl der SQL-Server wirklich empfangen hat, also nach dem die Anfrage durch die Komponenten bearbeitet wurde.

Die Query die Du da eingestellt hast, passt an einigen Stellen nicht zu Deinem Quellcode.
  Mit Zitat antworten Zitat
handson

Registriert seit: 18. Jan 2007
Ort: Delmenhorst
113 Beiträge
 
Delphi 2007 Professional
 
#5

AW: Query wird nicht vom Programm ausgeführt

  Alt 13. Mär 2013, 10:51
Vielleicht liegt das auch den ganzen ORs, die du benutzt. Zumindest bremst man damit die Abfrage auf dem Server aus. Versuch doch mal UNION:

Code:
(select * from prozess_position where status<>100
and Positionen_ID=313
and rueckm=1
and relevant=1
and Eckpunkt_ID=8)
union
(select * from prozess_position where status<>100
and Positionen_ID=313
and rueckm=1
and relevant=1
and Eckpunkt_ID=9)
union
(select * from prozess_position where status<>100
and Positionen_ID=313
and rueckm=1
and relevant=1
and Eckpunkt_ID=12)
probier es doch damit mal aus, vielleicht klappt das ja besser...

Stephan
Stephan Faust
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#6

AW: Query wird nicht vom Programm ausgeführt

  Alt 13. Mär 2013, 12:21
Vielleicht liegt das auch den ganzen ORs, die du benutzt. Zumindest bremst man damit die Abfrage auf dem Server aus.
Da die Abfrage über eine andere Schnittstelle durchaus funktioniert, ist das eher ein Nebenkriegsschauplatz. Ich würde übrigens ein
Code:
in (....)
bevorzugen aber das kommt auch auf den Server und das DBMS an.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Helld_River

Registriert seit: 2. Jan 2003
Ort: Hürth
136 Beiträge
 
Delphi 2010 Professional
 
#7

AW: Query wird nicht vom Programm ausgeführt

  Alt 13. Mär 2013, 14:55
Hey, wenn ich das richtig sehe kommt bei deinem zusammengebauten SQL etwas in dieser Art raus:
Code:
... and (Eckpunkt_ID=? OR Eckpunkt_ID=? OR Eckpunkt_ID=? ....
Fragezeichen stehen für irgendeinen Wert.

Ich würde noch zusätzlich weitere Klammern setzen wie folgt:
Code:
... and ( (Eckpunkt_ID=?) OR (Eckpunkt_ID=?) OR (Eckpunkt_ID=?) ....
Ich weiß nicht mehr in welchem Kontext ich das mal hatte, aber bei mir führte eine fehlende Klammerung damals zu falschen Ergebnissen.

Probiere es einfach mal aus.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 22:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz