Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi TIBStoredProc und BIGINT Parameter (https://www.delphipraxis.net/82810-tibstoredproc-und-bigint-parameter.html)

Meta777 19. Dez 2006 22:00

Datenbank: Firebird • Version: 1.5 • Zugriff über: IBX Kompos

TIBStoredProc und BIGINT Parameter
 
Hallo :hi:

Ich hab zwar schon gesucht im Forum aber nix gefunden darum hier folgende Frage:
Wie - wenn überhaupt - kann man mit den IBX Kompos 64Bit Integer Parameter handhaben?
Wenn es nicht gehen sollte, gleich eine zweite Frage: Was ist eine möglichst einfach zu integrierende Alternative die auch paralell zu den schon vorhanden IBX Kompos arbeitet?

Okili... Also schonma vielen Dank...

Shalom und Gottes Segen

Lemmy 20. Dez 2006 06:13

Re: TIBStoredProc und BIGINT Parameter
 
Hi,

ganz einfach: Indem Du an stelle der TIBStoredProc eine TIBDataSet verwendest und dort die Procedure entsprechend aufrufst.

Ein Wechsel zu anderen Komponenten ist nie einfach. Für mich kommen zur Zeit nur 2 Bibliotheken in die engere Auswahl FIBPlus und UIB, evtl. noch ZEOS wenn man mit mehreren unterschiedlichen DBMS arbeiten muss.

GRüße
Lemmy

Meta777 20. Dez 2006 08:27

Re: TIBStoredProc und BIGINT Parameter
 
Danke Lemmy.

Nun hab ich aber noch folgendes Problem: Wie kann ich auf Output Parameter einer Stored Procedure zugreifen? :gruebel:
Delphi-Quellcode:
var
  LRes: Int64;
begin
  IBDataSet1.SelectSQL.Text := 'SELECT * FROM PROC_TEST(:BIIP)';//BigIntInputParam
  IBDataSet1.Prepare;
  try
    IBDataSet1.ParamByName('BIIP').AsInt64 := High(Int64);
    IBDataSet1.Open;
    LRes := IBDataSet1.ParambyName('BIO').AsInt64;//Feld 'BIO' nicht gefunden!
    IBDataSet1.Close;
  finally
    IBDataSet1.UnPrepare;
  end;
Hier die Testprocedure:
SQL-Code:
CREATE PROCEDURE PROC_TEST (
    BII BIGINT)
RETURNS (
    BIO BIGINT)
AS
begin
  /* Procedure Text */
  BIO = 9223372036854775807;
  suspend;
end
TIA

dataspider 20. Dez 2006 09:16

Re: TIBStoredProc und BIGINT Parameter
 
Hi,

'BIO' erhältst du nicht als Parameter, sondern als Feld.

Cu, Frank

Meta777 20. Dez 2006 13:36

Re: TIBStoredProc und BIGINT Parameter
 
Zitat:

Zitat von dataspider
Hi,

'BIO' erhältst du nicht als Parameter, sondern als Feld.

Cu, Frank

Aber es gibt da eben kein 64Bit Integer FieldType.
Mit Field[].AsInteger bekomme ich -1 wenn es die 32 Bit übersteigt und .AsInt64 gibs eben nicht.... :|

Was einer nun eine Lösung :?:

Lemmy 20. Dez 2006 16:02

Re: TIBStoredProc und BIGINT Parameter
 
Hi,

bin jetzt gerade etwas überrascht ;-) Ich habe auf jeden Fall schon INT64 aus den IBX rausgequetscht... Ich habe gerade nachgeschaut: IBSQL kann INT64 als Feld. Ich muss mal zu Hause nachschauen wie ich das gemacht habe.....

Lemmy

Hansa 20. Dez 2006 17:19

Re: TIBStoredProc und BIGINT Parameter
 
Lemmy hat wohl nicht genau genug geguckt. :???:

Delphi-Quellcode:
  SP.ParamByName('PARAM1').AsInteger := 1; // Input
  SP.ExecProc;  // SP ausführen, Rückgabewerte ermitteln
  LeseFloatDS := SP.FieldByName ('OUT_PARAM').AsFloat; // Rückgabewerte auslesen

mkinzler 20. Dez 2006 17:45

Re: TIBStoredProc und BIGINT Parameter
 
Zitat:

LeseFloatDS := SP.FieldByName ('OUT_PARAM').AsFloat; // Rückgabewerte auslesen
Ein Float ist aber IMHO kein BigInt!

Meta777 20. Dez 2006 17:45

Re: TIBStoredProc und BIGINT Parameter
 
@hansa: Das es hier um Int64 geht haste wohl übersehen? :wink:

@lemmy: wäre sehr dankbar wenn du es findest und postest :)

Hansa 20. Dez 2006 17:57

Re: TIBStoredProc und BIGINT Parameter
 
Zitat:

Zitat von Meta777
@hansa: Das es hier um Int64 geht haste wohl übersehen? :wink:

Mann, mann, ein falsches Wort und es ist schon zuviel verlangt, dass die Beteiligten mal ihr Gehirn einschalten. :mrgreen: Man gebe einen . ein und dann noch ein "A". Was sieht man ? AsInt64, AsBcd, AsExtentded usw. Muss man halt selber mal überlegen, was am besten passt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:07 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