2010-08-05 4 views
4

Delphi 7에서 데이터베이스의 데이터로 비즈니스 객체를 영속화 할 수있는 방법이 있습니까? 구성 요소를 사용하지 않고도 가능합니까?Delphi 7 지속적인 비즈니스 객체

+0

DORM 프레임 워크가 곧 종료되었습니다. 이것도보실 수 있습니다. 하지만 델파이 7에서는 작동하지 않을 것 같아요 ... 소스 코드는 아직 사용할 수 없지만 개념은 흥미 롭습니다. http://www.delphifeeds.com/postings/71550-sneak_preview_about_dorm_the_delphi_orm –

답변

3

SQLite3 데이터베이스를 사용하여 Open Source ORM 프레임 워크를 사용할 수 있습니다. 완전한 RESTful 프레임 워크, 로컬에서 (즉, 처리 중) 또는 HTTP/1.1, Named pipes 또는 GDI 메시지를 통해 원격으로 작동합니다. 외부 dll은 필요하지 않습니다. Delphi 7부터 2010까지 작동합니다.

모두 소스 코드에서 직접 구성 요소없이 완료됩니다. 모든 데이터베이스 SQL은 클래스 게시 속성에서 생성됩니다.

/// 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

1

hcOPF 사실 Delphi 7로 개발 되었기 때문에 일부 새로운 언어 기능을 사용하지 않습니다. 그것을 sourceforge에서 확인하십시오.