![]() |
Re: Rückgabeparameter bei FireBird
Was ist eigentlich mit meinem Beispiel aus #11? Hast Du denn einmal versucht, das Statement mittels Open auszuführen und Dir den Wert mit FieldByName (nicht ParamByName) zu holen?
|
Re: Rückgabeparameter bei FireBird
Ich habe das auch schon versucht, irgend etwas hat dabei aber auch nicht geklappt. Ich wollte es gerade noch einmal versuchen, aber jetzt funktioniert gar kein SQL Statement mehr, weder mit noch ohne Parameter, weder mit noch ohne RETURNING: Ich bekomme jetzt immer die Exception:
Die Feldnamen für %s konnten nicht erkannt werden Mir ist aber nicht klar, was an meinem Code gegenüber vorher grundlegend verändert ist, vorher hat der Open Aufruf zumindest dann noch geklappt, wenn ich keine Parameter übergeben habe. Der aktuelle Code lautet, auf das einfachste heruntergebrochen:
Delphi-Quellcode:
und an dieser Stelle bekomme ich, egal ob mit oder ohne die Klausel "returning id", die oben angeführte Exception, d.h. ich kann jetzt überhaupt kein SQL Statement mehr erfolgreich absetzen. Wenn ich über ISQL genau das gleiche Statement (mit cut and paste hinüber kopiert, verdoppelte Hochkomma weggelöscht) eingebe, wird ganz normal eine neue Tabellenzeile angelegt.
SQLQ.SQLConnection := SQLC;
SQLQ.SQL.Clear; SQLQ.Params.Clear; SQLQ.SQL.add('INSERT into Interpret (NAME) values (''Testwert'') ;');// returning id;'); SQLQ.Open; |
Re: Rückgabeparameter bei FireBird
Das könnte aber an DBExpress liegen. Ich hatte den Treiber auch schon einmal ausprobiert und bin dann für mich zu der Erkenntnis gekommen, dass ich lieber noch ein paar Versionen abwarte :mrgreen:. Ein paar Alternativen zum Zugriff (sowohl kostenlose als auch kostenpflichtige) bekommst Du z.B. hier gelistet:
![]() |
Re: Rückgabeparameter bei FireBird
Ja, danke, leider kenne ich die Seite schon, und es ist nicht sehr aufbauend. Was ich suche, ist eine sehr schlanke Schnittstelle, weil ich mir darum herum meine eigene Zwischenschicht programmieren will. Und dafür möchte ich jetzt auch noch kein Geld ausgeben, d.h. ich suche nach irgend einer freeware Variante. Was es da gibt, ist aber grösstenteils überhaupt nicht mit Delphi 2009 kompatibel, teilweise sind die Links auch tot. Das einzige, was ich gefunden habe, was im Prinzip gepasst hätte, und mir auch absolut ausreichen würden, sind eben diese Firebird DBX Komponenten, und die funktionieren offenbar auch nicht richtig.
|
Re: Rückgabeparameter bei FireBird
Welchen DBX-Treiber verwendest du den? ( nicht den von D2010?)
|
Re: Rückgabeparameter bei FireBird
Ich habe im Internet auf einen Tip von Lemmy in einem anderen Thread hin die DLL dbxfb4d12.dll heruntergeladen.
![]() D12 entspricht glaube ich dem Delphi 2009. |
Re: Rückgabeparameter bei FireBird
Ab D2010 unterstützt DBX FireBird nativ, wobei dieser Treiber bei der Pro ( wie alle Treiber) gewisse Beschränkungen ( Z.B. nur lokal, 5 Benutzer) unterliegt.
|
Re: Rückgabeparameter bei FireBird
Soll er dafür jetzt das Update kaufen? Da kämen Fremdkomponenten aber meist billiger und wären zielführender.
|
Re: Rückgabeparameter bei FireBird
@ Omata (Thread 19)
Habe Dein Demoprogramm jetzt mit den Firebird DBX Komponenten statt Interbase ausprobiert. Irgendwo ganz tief drinnen lösen die DBX Komponenten schon beim ClientDataSet.Open eine exception aus, weitergeben wird nur lakonisch: Schwerwiegender Fehler. |
Re: Rückgabeparameter bei FireBird
Hallo...
weil wir jetzt schon mit Komponenten um uns werfen, schmeiß ich mal Zeos(Version 7 Alpha) und UIB in den Raum. Damit sollte das returning definitiv funktionieren. :hi: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:41 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