Klasse :: Autodb.

Nahezu automatische Objektpersistenz, die mit humaninterechnischer Datenbank koexistiert
Jetzt downloaden

Klasse :: Autodb. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Name des Herausgebers:
  • Nathan Goodman
  • Website des Verlags:
  • http://search.cpan.org/~natg/

Klasse :: Autodb. Stichworte


Klasse :: Autodb. Beschreibung

Fast automatisches Objektpersistenz, das mit humaninterechnischer Datenbank koexistiert Klasse :: AutodB ist ein Perl-Modul, das eng mit der Klasse :: Autoklasse arbeitet, um fast transparentes Objektpersistenz bereitzustellen, die mit einer humanentwickelten Datenbank koexistieren können. Der Auto-Persistenz-Mechanismus bietet Haken zum Anschließen der beiden Teile der Datenbank zusammen.Synopsis # -Code, der persistente Klasse # Package Person definiert; Verwenden Sie Base QW (Klasse :: Autoklasse); Verwenden Sie VARs QW (@Auto_Attributes% autodB); @ AUTO_ATTRIBUTES = QW (Name der Sex-ID-Freunde); % Autodb = (collection => 'person', keys => qq (Namezeichenfolge, Sexstring, ID Ganzzahl)); Klasse :: Autoklasse :: Deklaration; ############################################## # Code, der anhaltende Klasse # erstellt und speichern Neue Objekte # Verwenden Sie Klasse :: Autodb; Person verwenden; meine $ autodb = neue Klasse :: autodB (Datenbank => 'test'); # Datenbank öffnen # Machen Sie einige Objekte. Noch nicht in der Datenbank gespeichert My $ Joe = Neue Person (Name => 'Joe', Sex => 'm', id => 1); Meine $ Mary = Neue Person (Name => 'Mary', Sex => 'f', id => 2); meine $ bill = neue person (name => 'bill', sex => 'm', id => 3); # Richten Sie Freunde-Listen ein. Jedes ist eine Liste von Person Objekten $ Joe-> Freunde (); $ mary-> freunde (); $ bill-> freunde (); # Objekte in der Datenbank speichern $ autodb-> put_objects; # Vorhandene Objekte abrufen # Verwenden Sie Klasse :: AutodB; Person verwenden; meine $ autodb = neue Klasse :: autodB (Datenbank => 'test'); # Rufen Sie die Liste der Objekte ab, meine @ Personen = $ autodB-> erhalten (Sammlung => 'Person'); # jeder mein @ male = $ autodb-> erfahren (sammlung => 'person', sex => 'm'); # Just die Jungs # Tun mit den abgerufenen Objekten, zum Beispiel Freunde, um Freunde für meine $ Person (@Persons) {my @ friend_names = map {$ _-> name} @ {$ person-> freunde} drucken; $ Person-> Name drucken, "Freunde sind @ friend_names \ n"; } Abrufen und Prozessobjekte eins-nach-nach-one My $ Cursor = $ autodB-> Find (Sammlung => 'Person'); Während (meine $ person = $ cursor-> get_next) {# Tun, was Sie mit $ Person möchten, zum Beispiel Freunde, um Freunde aufzulisten my @ fratt_names = map {$ _-> name} @ {$ person-> freunde}; $ Person-> Name drucken, "Freunde sind @ friend_names \ n"; . ; Meine $ dbh = $ autodb-> dbh; Meine $ Abits = $ dbh-> selectcol_arrayref (QQ (Select dept.name von dept, empdept, Person, wo dept.id = empdept.dept_id und empdept.emp_id = person.id und person.name = 'joe'); ############################################# # Neue Funktionen in Verion 1.20 # Abrufen von Objekten verwenden SQL # voraussetzt die obige Datenbank (mit Human-Engineered Tables Dept und Empdept), # Diese Abfrage ruft Personobjekte für Mitarbeiter in der Spielzeugabteilung ab , Person, wo dept.id = empdept.dept_id und empdept.emp_id = person.id und dept.name = 'spielzeug'); # Abrufen Alle Objekte abrufen My @ all_objects = $ autodB-> erhalten; # Objekte löschen # $ autodb-> del (@Males); # Löschen Sie die Jungenanforderungen: · Perl.


Klasse :: Autodb. Zugehörige Software