Nehmen wir mal du hättest eine Tabelle TBS: ID, NAME, TEXT - dann ist ID der automatisch vergebene Primärschlüssel, NAME eine kurze Identifikation zur Benutzerauswahl und TEXT der vollständige Textbaustein. In Schlüsselfelder schreibst du also gar nichts und auch das zeilenweise Speichern unterbleibt.
Zitat von
marabu:
... Beispiele für das Ansprechen von Blob-Feldern aus Delphi heraus findest du in der ABS-Hilfe unter dem Indexeintrag BLOB...
Der Code muss zwar noch ein wenig an deine Bedürfnisse angepasst werden, aber er zeigt schon die wesentlichen Dinge:
Aus der ABS Online Hilfe
Delphi-Quellcode:
procedure TForm1.btLoadClick(Sender: TObject);
var
FileStream: TFileStream;
BlobStream: TABSBlobStream;
begin
ABSTable1.Edit;
try
FileStream := TFileStream.Create('Comments.txt',fmOpenRead or fmShareDenyNone);
BlobStream := ABSTable1.CreateBlobStream(ABSTable1.FieldByName('Comments'),bmWrite);
BlobStream.CopyFrom(FileStream,FileStream.Size);
FileStream.Free;
BlobStream.Free;
ABSTable1.Post;
except
ABSTable1.Cancel;
raise;
end;
end;
Der Trick mit dem BlobStream funktioniert mit TField, aber auch mit TParameter. Im Beispiel liest ein Stream aus einem anderen. Du hast deinen Textbaustein in einem TMemo erfasst, also würde ich es umdrehen und mit Memo.Lines.SaveToStream() in den BlobStream schreiben.