2010-08-05 8 views
4

Existe-t-il un moyen de pérenniser les objets métier avec des données provenant d'une base de données dans Delphi 7? Est-ce possible sans utiliser de composants?Objet métier persistant Delphi 7

+0

Le framework DORM vient de sortir. Vous pouvez jeter un oeil à celui-ci, aussi. Mais je suppose que ça ne marchera pas avec Delphi 7 ... le code source n'est pas encore disponible, mais le concept est intéressant. http://www.delphifeeds.com/postings/71550-sneak_preview_about_dorm_the_delphi_orm –

Répondre

3

Vous pouvez utiliser notre infrastructure Open Source ORM, en utilisant la base de données SQLite3. Cadre RESTful complet, fonctionne localement (c'est-à-dire en cours), ou à distance via HTTP/1.1, Tubes nommés ou messages GDI. Aucune DLL externe requise. Fonctionne avec Delphi 7 jusqu'à 2010.

Tout est fait sans aucun composant, directement à partir du code source. Toute la base de données SQL est créée à partir des propriétés publiées des classes.

Par exemple, un tableau de personnes est défini dans le code Delphi comme suit:

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

Et vous pouvez accéder à vos données avec le code comme ceci:

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; 

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

1

hcOPF fonctionne avec Delphi 7. En fait, il a été développé avec Delphi 7 et, par conséquent, n'utilise pas certaines des nouvelles fonctionnalités du langage. Vérifiez-le sur sourceforge.