Einzelnen Beitrag anzeigen

hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.275 Beiträge
 
Delphi 10.4 Sydney
 
#1

BDE -> FIBPlus, Blob-Problem

  Alt 9. Aug 2009, 18:18
Datenbank: Firebird • Version: 1.5 • Zugriff über: FIBPlus
Hallo #,

folgender BDE-Code schreibt einen Text-Blob.
Unter FIBPlus klappt das nicht ;(

Er findet AsBlob nicht.

OK, es geht über CreateBlobStream,
aber wie schreibe ich da nen String rein ?

OK2, unter folgendem Link habe ich das gefunden,
aber ist das das gleiche ?
Link



Delphi-Quellcode:
function UpdateTextBlobField_Ex(const theTableName: String;
  const thePrimaryKeyName: String; thePrimaryKeyValue: Integer;
  const theFieldName: String; const theText: String;
  var theErrorStr: String): Boolean;
var
  FQuerySQL : TjifQuery; // TQuery
  Param : TParam;
  Stream : TStream;
begin
  Result := False;
  theErrorStr := S_internal_error;

  try
    FQuerySQL := CreatejifQuery;
    try
      with FQuerySQL do
      begin
        DataBaseName:= C_ALIASNAME;

        SQL.Add('Update '+theTableName+' Set ');
        SQL.Add(theFieldName+'=:'+theFieldName);
        SQL.Add('Where '+thePrimaryKeyName+'=:Id');
        ParamByName('Id').AsInteger:= thePrimaryKeyValue;

        Param:= ParamByName(theFieldName);
        if theText='then
        begin
          Param.DataType:= ftBlob;
          Param.Clear;
          Param.Bound:= True;
        end
        else
        begin
          Param.AsBlob:= theText;
        end;

        ExecSQL;
      end; { with FQuerySQL do }

      Result:= True;
    finally
      FQuerySQL.Free;
    end;
  except
    on E: Exception do theErrorStr:= E.message;
  end;
end; { UpdateTextBlobField_Ex }
Heiko
Heiko
  Mit Zitat antworten Zitat