Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi UIB 2.1, Ungültige Variant-Operation (Delphi 6) (https://www.delphipraxis.net/97291-uib-2-1-ungueltige-variant-operation-delphi-6-a.html)

hoika 8. Aug 2007 06:59

Datenbank: FB • Version: 1.5 • Zugriff über: UIB

UIB 2.1, Ungültige Variant-Operation (Delphi 6)
 
Hallo,

folgender Code erzeugt den obigen Fehler in der Zeile
iId:= JvUIBQuery.Fields['Id'].AsInteger;

Bis jvuiblib.TSQLDA.GetByNameAsVariant geht alles gutn
der richtige Wert steht im Result,
aber danach , Bumm ;(

Was mache ich hier denn falsch ?


Delphi-Quellcode:
procedure TTestCase_UIB.Connect;
var
  JvUIBDataBase   : TJvUIBDataBase;
  JvUIBTransaction : TJvUIBTransaction;
  JvUIBQuery      : TJvUIBQuery;
  iId             : Integer;
begin
  JvUIBDataBase   := TJvUIBDataBase.Create(NIL);
  JvUIBTransaction := TJvUIBTransaction.Create(NIL);
  JvUIBQuery      := TJvUIBQuery.Create(NIL);
  try
    JvUIBTransaction.DataBase:= JvUIBDataBase;
    JvUIBQuery.Transaction:= JvUIBTransaction;
    JvUIBDataBase.SQLDialect:= 1;
    JvUIBDataBase.DatabaseName := 'localhost:testdb'; // db alias fro alias.conf
    JvUIBDataBase.UserName := 'sysdba';
    JvUIBDataBase.PassWord := 'masterkey';

    JvUIBDataBase.Connected:= True;
    try
      Check(JvUIBDataBase.Connected);

      JvUIBQuery.SQL.Add('Select * From Log');

      JvUIBTransaction.StartTransaction;
      try
        JvUIBQuery.Open;
        Check(JvUIBTransaction.InTransaction);
        try
          while not JvUIBQuery.EOF do
          begin
            iId:= JvUIBQuery.Fields['Id'].AsInteger;
            if iId=0 then
            begin
            end;

            JvUIBQuery.Next;
          end;
        finally
          JvUIBQuery.Close;
        end;
      finally
        JvUIBTransaction.Commit;
      end;
    finally
      JvUIBDataBase.Connected:= False;
    end;
  finally
    JvUIBQuery.Free;
    JvUIBTransaction.Free;
    JvUIBDataBase.Free;
  end;
end; { TTestCase_UIB.Connect }

Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:19 Uhr.

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