将对象保存到数据库中

Saving an Object into Database

我正在尝试将对象保存并加载到 BLOB 类型的数据库字段中。 这可能吗?如果是,怎么做?

示例:

正在将 vk.class.Offer.cls 的实例保存到 DB-Table OfferHead
并从 DB-Table OfferHead.

加载 vk.class.Offer.cls 类型的 objOffer

我正在尝试以下代码:

   DEFINE VARIABLE objAngebot AS CLASS vk.class.Angebot NO-UNDO.
   DEFINE VARIABLE oObj       as MemPTR                 NO-UNDO.

   DEFINE BUFFER bAngKopf FOR AngKopf.

   COPY-LOB  bAngKopf.ank_ObjHandle TO oObj.
   objAngebot = CAST(oObj, vk.class.Angebot). 

我通过将对象写入文件并将其重新读回数据库来使其工作。

COPY-LOB FROM bAngPos.anp_ObjHandle TO FILE cPfadPos.
  objInputStream = NEW Progress.IO.FileInputStream(cPfadPos).
  objSerializer = NEW Progress.IO.BinarySerializer().
  objAngebotPos = CAST(objSerializer:Deserialize(objInputStream), vk.class.AngebotPos) NO-ERROR.
  objInputStream:Close().
  OS-DELETE VALUE(cPfadPos).