[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