Autor Beitrag
Patriol
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52


D3, D5, D7
BeitragVerfasst: Di 20.02.07 22:44 
Möchte mittels ADO auf eine AccessDB (2000) zugreifen. Ich erhalte immer wenn ich meine Query

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
procedure TfmMain.ExecQuery(AParentID: Double);
begin
  try
    qryMain.Active   := false;
    qryMain.SQL.Text := 'SELECT * FROM Tabelle WHERE AParentID = ' + FloatToStr(AParentID);
    qryMain.Active   := true;


ausführen will die Exception:

Zitat:
Project XYZ.exe raised exception class EoleException with message 'Parameter AParentID hat keinen Standardwert'. [...]


Hat jemand eine Ahnung woran das liegen kann? Wüsste nicht was daran falsch ist.
GTA-Place
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
EE-Regisseur
Beiträge: 5248
Erhaltene Danke: 2

WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
BeitragVerfasst: Di 20.02.07 23:02 
Syntax lernen:
ausblenden Delphi-Quelltext
1:
'SELECT ... = "' + FloatToStr(...) + '"');					

Sagt zumindest Google -> forum.dsdt.info/viewtopic.php?p=130751

_________________
"Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
Patriol Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52


D3, D5, D7
BeitragVerfasst: Di 20.02.07 23:50 
Nee leider hat das nichts gebracht. hätte mich auch ein wenig gewundert, denn die anführungszeichen deuten ja nur auf einen String hin und da ich in der DB auch einen zahlentyp habe sollte es auch ohne die anführungszeichen gehen.
Sinspin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1335
Erhaltene Danke: 118

Win 10
RIO, CE, Lazarus
BeitragVerfasst: Mi 21.02.07 00:29 
Interessante Fehlermeldung. Ist das alles oder kommt da noch mehr?
Wenn ich die Meldung so lese denke ich an eine Spalte der kein Typ zugeordnet wurde oder deren Intialwert nicht gesetzt und somit NULL ist.

_________________
Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
Patriol Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52


D3, D5, D7
BeitragVerfasst: Mi 21.02.07 13:43 
Eigentlich haben alle Felder einen Datentyp.

Das komische ist nur, wenn ich statt FloatToStr(AParentID) den Wert direkt mit ins SQL-Statement schreibe SELECT * FROM Tabelle WHERE AParentID = 0, dann funktioniert es auch.

Moderiert von user profile iconChristian S.: sql-Statement repariert
Tilo
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 1098
Erhaltene Danke: 13

Win7 geg. WInXP oder sogar Win98
Rad2007
BeitragVerfasst: Mi 21.02.07 14:57 
Compiliert Delphi den ursprünglichen Code?
Wenn ja setzt mal in Zeile 5 einen Haltepunkt und sieht nach welchen Wert AParentID hat.
Vielleicht liegt dort der Fehler.
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Mi 21.02.07 15:01 
Was hast Du denn als Werte für ParentID? Oder anders gefragt: Gibt es einen Grund, dass Du FloatToStr machst und nicht IntToStr?
Wenn Du nämlich einen Wert mit Dezimalstellen hast, dann wird daraus ein String mit Komma und in SQL brauchst ist der Punkt der Dezimaltrenner.
Patriol Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52


D3, D5, D7
BeitragVerfasst: Mi 21.02.07 20:32 
Daran hatte ich gestern abend auch gedacht nur leider ist das Verhalten mit IntToStr genauso ... :(
Patriol Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 52


D3, D5, D7
BeitragVerfasst: Mi 21.02.07 20:48 
Hab den Fehler gefunden ... is mir ja schon fast peinlich :oops:

Mein Feld in der DB heißt nicht wie der Parameter "AParentID" sonder "ParentID". Kann er dann natürlich nich finden :autsch:

Sorry wenn ich euch mit son dummen Fehler belästigt hab, aber trotzdem danke für die Hilfe!