![]() |
Zeos - Stored Procedur
Hi,
ich wollte über eine Stored Procedure einen Datensatz Speichern (Firebird 1.5). Bei der Stored Procedur hab ich dafür mehrere Eingabeparameter festgelegt:
SQL-Code:
Diese Stored Procedure wollte ich über Delphi mit der Zeoskomponenten TZIBSqlStoredProc (Zeos Version 5.4) ansteuern. Doch an diesem Punkt weis ich absolut nicht weiter. :wiejetzt:
SET TERM ^ ;
CREATE PROCEDURE NEW_PROCEDURE ( BESTIMMUNG BLOB SUB_TYPE 0 SEGMENT SIZE 80, NUMMER SMALLINT, ...usw. Wie kann ich die in der SP deklarieten Eingabewerte übergeben? [edit=Admin]SQL-Tags korrigiert. Mfg, Daniel[/edit] |
Re: Zeos - Stored Procedur
Erstmal herzlich willkommen in der DP! :party:
Die Komponente verfügt über die Eigenschaft Params, da schreibst du deine Werte rein. |
Re: Zeos - Stored Procedur
Danke für den schnellen Tip aber ich komme immer noch nicht recht zurecht.
Ich ging immer davon aus man könne die Übergabeparameter zur Entwurfszeitbereits festlegen aber wie? Auf die Eigenschaft Params im Objektinspektor kann man ja nicht direkt zugreifen. Nun gut, habe halt erst mal die Parameter zur Laufzeit übergeben mit:
Delphi-Quellcode:
(ist vielleicht nicht die beste Zuweisung aber sollte doch hoffentlich funktionierne)
[code:1:cdf485aa6d] with StoredProc do //TZIBSqlStoredProc
begin Params.CreateParam(ftBlob, 'Bestimmung', ptInput); ParamByName('Bestimmung').Value := MemoBestimmung.Text; Params.CreateParam(ftSmallint, 'Nummer', ptInput); ParamByName('Nummer').Value := EdId.Text; ...usw StoredProcName := 'New Procedure'; ExecProc; end;[/code:1:cdf485aa6d] Jedoch bekomme ich beim starten mit ExecProc die Fehlermeldung: EDatabaseError...Meldung:'is not selected Proc' :wall: Woran liegt das nun? Oder liegt es an der Zuweisung? P.S.Hät ich gewusst wie kompliziert Stored Proceduren sind hät ichs gelassen :? |
Re: Zeos - Stored Procedur
- Wenn du die '...' in Feld Params drückst, kommt ein kleines Fenster, wo du die Parameter festlegen kannst...
- Seit wann können Prozedurnamen auf der Datenbank Leerzeichen enthalten??? :gruebel: P.S Vielleicht hast du dich auch nur vertippt... Zitat:
Zitat:
|
Re: Zeos - Stored Procedur
In dem Feld Params bzw. daneben sind bei mir keine '...' Auch wenn ich auf dasFeld Doppelklicke passiert nichts. Warum kann man bei ZEOS auf die Eigenschaft Params nicht zugreifen, währenddesen das bei der von Borland mitgelieferten SP-Komponente funktionier?
(Fehler der ZEOS-Komponeten???) Zitat:
|
Re: Zeos - Stored Procedur
:shock: Ach Mist, bin wieder blind! Du verwendest ja die Version 5.4 von ZEOS!
Spricht irgendetwas dagegen, die neueste stabile Version (6.1.5) zu benutzen?? |
Re: Zeos - Stored Procedur
Zitat:
Allerdings könnte ich von 5.4.0-gamma auf Zeosdbo 5.5.0 stable umsteigen. Das werd ich vielleicht mal probieren. |
Re: Zeos - Stored Procedur
Hi monta, hi Stevie (again :mrgreen:),
ich hab' mich vor geraumer Zeit auch mal mit den ZEOS 5.5 und D3 rumgeschlagen (siehe ![]()
Code:
Die Parameter emp_no und proj_id wären hier dann die Parameter des Query-Objekts und würden auch genau so wie Query-Parameter behandelt werden.
EXECUTE PROCEDURE ADD_EMP_PROJ (:emp_no, :proj_id)
So! Und jetzt: Gute Nacht! :hi: |
Re: Zeos - Stored Procedur
Hi,
jetzt bastel ich seit drei Tagen an diesem Problem rum, doch ich sitz immernoch irgenwie auf der Leitung :spin2: Zitat:
mein letzter Versuch (an der Beispieldatenbank) sah so aus:
Delphi-Quellcode:
ist wahrscheinlich völlig falsch :!: Wär jemand so nett mir mal den richtigen Code, um auf die Beispielprozedure zuzugreifen, zu posten.
with Query do
begin SQL.Text := 'EXECUTE PROCEDURE ADD_EMP_PROJ (:emp_no, :proj_id)'; ParamByName('emp_no').Value := 444; ParamByName('proj_id').Value := 'VBASE'; ExecSQL; end; |
Re: Zeos - Stored Procedur
Moin monta,
schau Dir mal die StoredProc-Demo aus den Demos zu meinem ZEOS-Tuto an... Die kannst Du ![]() Ich hoffe, das hilft. Uups... Hab' eben erst wieder gesehen, dass Du D3 pro einsetzt :oops: . Meine Kompos sind für D7pro und ZEOS 6.1.5 erstellt. Ich hoffe aber, dass Du die Lösung aus dem Quellcode herausziehen kannst. Wenn nicht, dann melde Dich einfach mal. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:31 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 by Thomas Breitkreuz