Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Direct Oracle Access 4.0 für Delphi 2005 (https://www.delphipraxis.net/52151-direct-oracle-access-4-0-fuer-delphi-2005-a.html)

Gimli2 24. Aug 2005 15:13

Datenbank: Oracle • Version: 9i • Zugriff über: DOA

Direct Oracle Access 4.0 für Delphi 2005
 
Hallo,

ich habe mir den Direct Oracle Access von Allrouns Automations für Delphi 2005 installiert.
Soweit komme ich damit auch zurecht.
Aber kann mir jemand sagen wie man dort eine Stored Procedure mit Parametern aufruft und den Rückgabewert abfängt?


Thx

dfried 24. Aug 2005 15:24

Re: Direct Oracle Access 4.0 für Delphi 2005
 
Angenommen du hast eine StroredProcedure "Proc_Name" mit zwei Parametern "param1" und "param2" von denen Param1 ein eingabeparameter und param2 ein ausgabeparameterist.
Dann nimmst Du eine TOracleQuery-Komponente, als SQL-Text gibst du z.B. folgendes ein:

Delphi-Quellcode:
begin
  Proc_Name(:param1, :Param2);
end;
Im Delphi-Sourcecode rufst du die StoredProc dann folgendermassen auf:

Delphi-Quellcode:
Query1.SetVariable('param1',1234);
Query1.Execute;
myVar := Query1.GetVariable('Param2');
Wenn du Packages hast, kannst du dir über den Package-Wizard auch eine "Delphi-Klasse" für den Aufruf davon erzeugen lassen.

Steht aber alles eigentlich recht gut inder Doku beschrieben.

Gruß
Daniel

Robert_G 24. Aug 2005 15:42

Re: Direct Oracle Access 4.0 für Delphi 2005
 
Genau, in Ora würde ich fast immer zu Packages raten.
Damit kannst du auch viel optimieren, weil Packag variablen die ganze Session lang leben. So können Funktionen Werte wiederverwenden oder Cursor in Chunks in Listen packen und diese als ein Stück in deiner Delphi App benutzen. (Siehe Jbgs Geschwindigkeits Thread ;) )
Der Package Wizzard spart einem viel Wrapper code. (Man sollte sich nur angewöhnen diese komische DefaultTable rauszulöschen, die nervt ;) )

btw: Packages sind meist einfach hübscher, da man Funktionen bündeln kann.
Und wenn man eine Funktion nur innerhalb des Packages braucht, deklariert man sie nicht in den Specs, wodurch sie außerhalb nicht sichtbar ist. :)

dfried 24. Aug 2005 15:51

Re: Direct Oracle Access 4.0 für Delphi 2005
 
Dem kann ich nur zustimmen!!! :thumb:

Ich mach auch fast alles mit Packages in ORACLE.

Gruß
Daniel

Gimli2 24. Aug 2005 16:02

Re: Direct Oracle Access 4.0 für Delphi 2005
 
Super, danke euch.
Wo findet man denn bei DOA nen Package Wizard?
Kann es sein das er für die Evaluation Version von
DOA 4.0 für Delphi 2005 nicht dabei ist?

dfried 24. Aug 2005 16:10

Re: Direct Oracle Access 4.0 für Delphi 2005
 
Hab hier leider nur D7 und da gibt es in der IDE einen Menupunkt "Oracle" und da drunter "Package Wizard".

Gruß
Daniel

Robert_G 24. Aug 2005 16:12

Re: Direct Oracle Access 4.0 für Delphi 2005
 
Kann sein, dass es das in D2005 nicht gibt.
Auf der Website sagen sie ja, dass ein paar Dinge nicht in D2005 enthalten sind. Lass' dir den Wrapper für D7 anlegen. ;)

Gimli2 24. Aug 2005 16:15

Re: Direct Oracle Access 4.0 für Delphi 2005
 
Könnt ihr mir nochmal nen link geben wo ich Delphi 7 ziehen kann?
Ich finde bei Borland imme rnur Delhi 2005

dfried 24. Aug 2005 16:35

Re: Direct Oracle Access 4.0 für Delphi 2005
 
Folgendes zum "fehlenden" Package Wizard in Delphi 2005 habe ich im Forum bei AllroundAutomatins gefunden:

Zitat:

Hello,

there is no PackageWizard (among other things) in delphi 2005.

But I found a way for a standalone PackageWizard. After compiling the following source with runtime pacakages I have a programm that I can install under tools of delphi 2005.


code:
--------------------------------------------------------------------------------

program PackageWizard;
uses Forms, OracleTools;
{$R *.res}
begin
Application.Initialize;
OracleTools.DoPackageWizard;
end.

--------------------------------------------------------------------------------

I have compiled with d7, but I think it must work with delphi 2005 too.

By the way a feature request:

Support of datatype integer
Support of normal stored functions and procedures.
Beware the camlecase used in the package
Hoffe, das hilft dir weiter!

Gruß
Daniel

Robert_G 24. Aug 2005 16:38

Re: Direct Oracle Access 4.0 für Delphi 2005
 
Zitat:

Zitat von dfried
Beware the camlecase used in the package

Da weiß einer wohl nicht was er da macht... :zwinker:
Natürlich geht diese Info beim Kompilieren verloren und könnte höchstens durch Parsing des Source codes gewonnen werden...


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:11 Uhr.
Seite 1 von 2  1 2      

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