加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Delphi 7持久的业务对象

发布时间:2020-12-15 09:16:12 所属栏目:大数据 来源:网络整理
导读:有没有办法在Delphi 7中使用来自数据库的数据来保持业务对象的持久性? 是否可以不使用组件. 解决方法 您可以使用我们的开源ORM框架,使用SQLite3数据库.完整的RESTful框架,在本地(即在进程中)工作,或通过HTTP / 1.1,命名管道或GDI消息远程工作.无需外部dll.
有没有办法在Delphi 7中使用来自数据库的数据来保持业务对象的持久性?
是否可以不使用组件.

解决方法

您可以使用我们的开源ORM框架,使用SQLite3数据库.完整的RESTful框架,在本地(即在进程中)工作,或通过HTTP / 1.1,命名管道或GDI消息远程工作.无需外部dll.适用于Delphi 7至2010年.

所有这些都是在没有任何组件的情况下完成的所有数据库SQL都是从类发布的属性创建的.

例如,人员表在Delphi代码中定义如下:

/// table used for the Babies queries
TSQLPeople = class(TSQLRecord)
  private
    fName: RawUTF8;
    fAddress: RawUTF8;
    fBirthDate: TDateTime;
  published
    property Name: RawUTF8 read fName write fName;
    property Address: RawUTF8 read fAddress write fAddress;
    property BirthDate: TDateTime read fBirthDate write fBirthDate;
end;

您可以使用以下代码访问您的数据:

var People: TSQLPeople;
  ID: integer;
begin
  // create a new record,since Smith,Jr was just born
  People := TSQLPeople.Create;
  try
    People.Name := 'Smith';
    People.Address := 'New York City';
    People.BirthDate := Now;
    ID := Client.Add(People);
  finally
    People.Free;
  end;
  // retrieve record data
  People := TSQLPeople.Create(Client,ID);
  try
    assert(People.Name='Smith');
  finally
    People.Free;
  end;
end;

见http://blog.synopse.info/category/Open-Source-Projects/SQLite3-Framework

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读