AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Fehlersuche bei select mit IBDAC
Thema durchsuchen
Ansicht
Themen-Optionen

Fehlersuche bei select mit IBDAC

Ein Thema von messie · begonnen am 28. Apr 2014 · letzter Beitrag vom 29. Apr 2014
Antwort Antwort
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#1

Fehlersuche bei select mit IBDAC

  Alt 28. Apr 2014, 20:14
Datenbank: Firebird • Version: 2.5 • Zugriff über: IBDAC
Moin,

nachdem ich eines der zuletzt geposteten Probleme mit einem sinnvollen und zeitlich gut erträglichen Join-Konstrukt lösen kann (mir ist da eben mal ein Kronleuchter aufgegangen) hapert es an der Umsetzung.

Code:
SELECT distinct TIME_STAMP FROM AUFTRAG
join SUBORDER on AUFTRAG.ID = SUBORDER.ORDER_ID
join COMPONENT on SUBORDER.ID = COMPONENT.BATCH_ID
join SUBCOMPONENT on COMPONENT.ID = SUBCOMPONENT.PUMP_ID
join DATA ON SUBCOMPONENT.ID = MEASURED_DATA.SUBCOMPONENT_ID
where AUFTRAG.INTERNAL_ORDER = '123456'
Dieser Code funzt wunderbar im FlameRobin, nicht aber in meiner Anwendung. Ich bekomme bei selbiger Abfrage an meine TIBCQuery eine Exception "conversion error from string", die auf den ersten Eintrag in ORDER zeigt.

Was muss ich da beachten?

Grüße, Messie

Geändert von messie (29. Apr 2014 um 06:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: Fehlersuche bei select mit IBDAC

  Alt 28. Apr 2014, 20:53
ORDER ist IMHO ein reserviertes Schlüsselwort. Also "ORDER" schreiben.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#3

AW: Fehlersuche bei select mit IBDAC

  Alt 28. Apr 2014, 21:33
Besitzen die Felder in den JOIN Bedingungen den gleichen Datentyp?
  Mit Zitat antworten Zitat
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#4

AW: Fehlersuche bei select mit IBDAC

  Alt 29. Apr 2014, 06:32
Besitzen die Felder in den JOIN Bedingungen den gleichen Datentyp?
Ja, das sind echte Indices. Nur der TIME_STAMP und die INTERNAL_ORDER sind Strings.

ORDER ist IMHO ein reserviertes Schlüsselwort. Also "ORDER" schreiben.
In der echten DB heißt das auch anders. Da ist nur ein Firmenname drin, den ich rausgenommen habe. Ich habe das mal ersetzt.

Grüße, Messie
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Fehlersuche bei select mit IBDAC

  Alt 29. Apr 2014, 07:37
Sind die sonstigen Randbedingungen die selben? Z.b. die Version der fbclient, usw.? Andere Idee wäre eine Parametrisierung der Auftragsnummer.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Fehlersuche bei select mit IBDAC

  Alt 29. Apr 2014, 07:49
Hallo,

Zitat:
where AUFTRAG.INTERNAL_ORDER = '123456'
wie gross ist das Feld INTERNAL_ORDER in der DB ?

Zitat:
Dieser Code funzt wunderbar im FlameRobin, nicht aber in meiner Anwendung.
Zeigt dir FlameRobin auch die Datensätze an?
Wenn nicht, hast du ihm nur ein Prepare/Open machen lassen,
aber die Datensätze nicht abgeholen lassen.

"Conversion Error From String" kann auch heißen,
dass du in deine DB einen String eingetragen hast, der Längenmäßig nicht in das Feld reinpasst
z.B: Feld mit VarChar(1), in das "AB" eingetragen wurde.
Dummerweise merkt das FB erst beim Abholen der Datensätze, dass das gar nicht passt.

Mach mal ein Select * auf alle verwendeten Tabellen und hole auch die Datensätze alle ab.


Heiko
Heiko
  Mit Zitat antworten Zitat
Lemmy

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

AW: Fehlersuche bei select mit IBDAC

  Alt 29. Apr 2014, 08:02
"Conversion Error From String" kann auch heißen,
dass du in deine DB einen String eingetragen hast, der Längenmäßig nicht in das Feld reinpasst
z.B: Feld mit VarChar(1), in das "AB" eingetragen wurde.
Dummerweise merkt das FB erst beim Abholen der Datensätze, dass das gar nicht passt.
wie schafft man das? Ich kenne das nur von der Situation, dass jemand per "Update" auf die Systemtabellen an den Tabellenstrukturen herum spielt und dann genau so ein Konstrukt fabriziert....

Grüße
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#8

AW: Fehlersuche bei select mit IBDAC

  Alt 29. Apr 2014, 09:18
Da gibt es einen Bug in Verbindung mit UTF8. http://tracker.firebirdsql.org/browse/CORE-3373
  Mit Zitat antworten Zitat
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#9

AW: Fehlersuche bei select mit IBDAC

  Alt 29. Apr 2014, 19:31
Hallo,
Zeigt dir FlameRobin auch die Datensätze an?

"Conversion Error From String" kann auch heißen,
dass du in deine DB einen String eingetragen hast, der Längenmäßig nicht in das Feld reinpasst
z.B: Feld mit VarChar(1), in das "AB" eingetragen wurde.
Moin,

die Datensätze sind in FlameRobin da. Bei der Auslegung der Stringlängen war ich sehr großzügig und habe varchar(100) verwendet trotz Stringlängen bisher <= 25. Da ist eigentlich auch noch Luft für UTF8. Und im Moment lese ich ja nur.

Grüße, Messie


Edit: ich habe die Abfrage jetzt hinbekommen - es waren banale Fehler - tut mir leid!


Danke für die Unterstützung, ich werde sicher in Kürze noch weitere Fragen haben.

Geändert von messie (29. Apr 2014 um 21:02 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 11:59 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