![]() |
Datenbank: Firebird • Version: 2.1 • Zugriff über: FIBPlus
FIBPlus Daten auslesen: XSQLDA index out of range
Hi@all!
Ich muss mich gerade mit Datenbanken beschäftigen, da Chef ein Programm mit Datenbankanbindung braucht. Soweit alles kein Problem, bis auf die Tatsache, dass ich vorher noch nie was mit SQL am Hut hatte. Ich habe hier ein Beispielprojekt inkl. Datenbank, an dem ich mein Projekt hochziehen möchte und kann bereits Datensätze in der Datenbank ablegen, mit Generatoren (sodass eine fortlaufende ID in den Daten erzeugt wird). Jetzt versuche ich gerade, die von mir gepspeicherten Daten wieder ins Programm einzulesen. Hier habe ich folgenden Code gefunden (aber nicht wirklich verstanden):
Delphi-Quellcode:
Wenn ich selben Code mit meinen Programm verwende, knallt es an der stelle "DataSet.Params[0].Value=ID" mit folgender Antwort vom Server:if DataSet.Active then DataSet.Close; DataSet.Prepare; DataSet.Params[0].Value:= ID; DataSet.Open; PersonVorname:= DataSetVorname.Text; PersonNachname:= DataSetNachname.Text; "XSQLDA index out of range". (ID ist der Index in einer Datenbanktabelle (momentan sind 2 einträge drin, und ID=1)) Scheinbar habe ich bzw. meine Datenbank keine "params"?! Könnte mir jemand die Funktionsweise von dem Code erklären und evtl einen Hinweis zum Fehler geben? Vg und frohes neues Jahr, Euer Michael |
Re: FIBPlus Daten auslesen: XSQLDA index out of range
hallo Michael,
ich möchte dir nicht zu nahe treten, aber mit deinen momentanen Kenntnissen von DB krachts erst recht, wenn "Chef" das Ergebnis präsentiert bekommt. das kann so nur schief gehen. Also erst mal lesen, lernen, lesen, danach an die Aufgabenstellung gehen. Gruss KH |
Re: FIBPlus Daten auslesen: XSQLDA index out of range
Hallo Michael,
dein Dataset wird über die Eigenschaft SQLs definiert. Wenn dort ein Parameter benutzt wird (eingeeitet mit einem Doppelpunkt), dann existiert dieser und kann über Params[n] angesprochen werden. Beispiel:
SQL-Code:
Jetzt existiert der Parameter id.
SELECT NachName from Personen where ID = :id
|
Re: FIBPlus Daten auslesen: XSQLDA index out of range
Danke, MrSpock! Ich hatte nachträglich etwas an der ID in der Datenbank geändert, und dann die SQLs des DataSets nicht neu generiert. Da haben wir also schon den Fehler! Herzlichen Dank!
@Khh: Ich bekomme das schon brauchbar hin und lerne momentan eine ganze menge beim programmieren. Dabei lese ich immer zwischendurch in den Manuals nach, wenn ich etwas nicht kapiere. ;-) Und das Beispiel, was ich hab, hat mir mein Chef gegeben, also wirds nicht so ganz verkehrt sein, sich daran zu orientieren! :) Grüße nochmals! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:51 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