Rose :: db :: Objekt

erweiterbarer, hochleistungsfähiges Objekt-relationales Mapper (orm)
Jetzt downloaden

Rose :: db :: Objekt Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Name des Herausgebers:
  • John Siracusa
  • Website des Verlags:
  • http://search.cpan.org/~jsiracusa/

Rose :: db :: Objekt Stichworte


Rose :: db :: Objekt Beschreibung

Erweiterbarer, Hochleistungsobjekt-relationaler Mapper (ORM) Rose :: db :: Objekt ist ein Perl-Modul für Objekte, die eine einzelne Zeile in einer Datenbanktabelle einkapseln. Rose :: db :: Objekt abgeleitete Objekte werden manchmal einfach als "Rose :: db :: objects-Objekte" in dieser Dokumentation der Kürze genannt, aber seien Sie versichert, dass die Ableitung der einzige vernünftige Weg ist, diese Klasse zu verwenden. : DB :: Objekt erbt von, und folgt den Konventionen von Rose :: Objekt. Weitere Informationen finden Sie in der Rose :: Objektdokumentation. Für einen informellen Überblick über diese Modulverteilung, konsultieren Sie die Rose :: db :: object :: tutorial.restrictionRose :: db :: object-Objekte können Zeilen in fast jeder Datenbanktabelle darstellen. unterliegen den folgenden Einschränkungen. * Der Datenbankserver muss von Rose :: dB unterstützt werden. * Die Datenbanktabelle muss einen primären Schlüssel haben. * Der primäre Taste darf Nullwerte in keiner seiner Spalten nicht zulassen Spaltenname in der Datenbanktabelle, die mit dem Namen einer Methode in der Rose :: db :: object api in Konflikt steht. Es gibt zwei mögliche Problemumgehungen: entweder explizit alias die Spalte oder definieren eine Mapping-Funktion. Sehen Sie sich die Methoden Alias_Column und Scinne_Name_to_method_name_name_to_method_name_name_to_method_name_name_name_name_name_name_name :: db :: object :: Metadata-Dokumentation für weitere Details. Es gibt auch unterschiedliche Unterstützung für Datentypen in jedem von Rose :: dB unterstützten Datenbankserver. Wenn Sie über eine Tabelle verfügen, mit der ein Datentyp verwendet wird Rose :: db :: object :: Metadatas column_type_class-Methode, Yada yada. (Oder können Sie den neuen Typ einer vorhandenen Säulenklasse zuordnen.) Das gesamte Rahmen ist erweiterbar. Diese Modulverteilung enthält direkte Implementierungen der häufigsten Säulentypen, aber es gibt sicherlich mehr, was möglich ist. Einreichungen sind willkommen Die ## Referenzdokumentation folgt folgen. ## Erstes, einrichten Sie Ihre Rose :: db-Datenquellen, ansonsten können Sie nicht mit der Datenbank herstellen. Siehe ## Die Rose :: db-Dokumentation Weitere Informationen. Für ## Ein kurzer Start finden Sie die Rose :: db :: Tutorial-Dokumentation. ## ## Klassen erstellen - zwei mögliche Ansätze: ## # # 1. Automatische Konfiguration # Paketkategorie; Verwenden Sie Basis QW (Rose :: db :: Objekt); __Package __-> Meta-> Setup (Tabelle => 'Kategorien', Auto => 1,); ... Paketpreis; Verwenden Sie Base QW (Rose :: db :: Objekt); __Package __-> Meta-> Setup (Tabelle => 'Preise', Auto => 1,); ... Paketprodukt; Verwenden Sie Basis QW (Rose :: db :: Objekt); __Package __-> Meta-> Setup (Tabelle => 'Produkte', Auto => 1,); # # 2. Manuelle Konfiguration # Paketkategorie; Verwenden Sie Basis QW (Rose :: db :: Objekt); __Package __-> Meta-> Setup (Tabelle => 'Kategorien', Spalten => , eindeutig_key => 'Name',); ... Paketpreis; Verwenden Sie Basis QW (Rose :: db :: Objekt); __Package __-> Meta-> Setup (Tabelle => 'Preise', Spalten => , unique_key => ,); ... Paketprodukt; Verwenden Sie Basis QW (Rose :: db :: Objekt); __Package __-> Meta-> Setup (Tabelle => 'Produkte', Spalten => , default => 'inaktiv',}, start_date => {type => 'datetime'}, end_date => {type => 'dateTime'}, date_created => {type => 'timestamp', default => 'Now '}, Last_Modified => {type =>' Timestamp ', Default =>' Jetzt '},], unique_keys =>' Name ', ausländisch_keys => , Beziehungen => ,); ... # # Beispielnutzung # $ Produkt = Produkt-> NEU (ID => 123, Name => 'GameCube', Status => 'Active', start_date => '11 / 5/2001 ', end_date =>' 12/1/2007 ', Kategorie_ID => 5); $ Produkt-> Speichern; ... $ Produkt = Produkt-> NEU (ID => 123); $ produkt-> laden; # Fremdkörper laden über "One To One" -Beath-Druck-Druck-> Kategorie-> Name; $ product-> end_date-> hinzufügen (Tage => 45); $ Produkt-> Speichern; ... $ Produkt = Produkt-> NEU (ID => 456); $ produkt-> laden; # Lade Fremdkörper über "One To Voy To Views" Relation Print Join '', $ product-> Preise; ...


Rose :: db :: Objekt Zugehörige Software