[Python-de] Art Persistence Framework
Thomas Guettler
guettli at thomas-guettler.de
Don Apr 22 22:32:30 CEST 2004
On Thu, Apr 22, 2004 at 02:08:51PM +0200, Marek Kubica wrote:
> Hi!
> Kennt jemand irgendein Stück Python Code, dass Datentypen (auch
> komplexe, wie Listen mit Klassen darin) auf Festplatte speichern
> kann, so wie Pickle, aber nicht in Pickle Dateinen sondern über
> variable Backends in Datenbanken (die man auch in nicht Python
> Programmen auslesen kann), die nur in Python geschrieben sind (am
> besten ab Python >2.1) und auf Windows und Linux laufen. Und das
> ganze am besten relativ 'leicht'.
Hallo,
Wenn du in der Datenbank nicht ein Pickle abspeichern willst, sondern
die Attribute der Klassen in Spalten schreiben willst suchst du:
Objekt-Relationals Mapping.
Beispiel:
Class Mitarbeiter:
def __init__(self):
id=...
name=...
email=...
projects=[...] # N zu M Beziehung
---> (relationale) Datenbank
Tabelle Mitarbeiter
id | name |
=============
1 | Maier
-----------
2 | Schulze
Tabelle Projects:
id | project
===========
1 | Werbung
------------
1 | Vertrieb
Tabelle projects-mitarbeiter:
mid | pid
=========
1 | 1
-------
1 | 2
Andere Lösung: Du verwendest ZODB und programmierst Wrapper für Perl,
Java, bzw. was du eben noch als andere Programmiersprache benötigst.
Ich würde den zweiten Vorschlag bevorzugen.
Gruß,
Thomas
--
Thomas Guettler <guettli at thomas-guettler.de>
http://www.thomas-guettler.de