Ich hab da mal was gelesen::o)
Simplify: move code into database functions | Derek Sivers
Kurz um:
Datenbank konstant seit Jahren Postgresql.
Webserver variabel über die Jahre hinweg Perl/Ruby/Python/PHP/JavaScript(Client-Site).
:idea:Also warum die meist gleichbleibende Business-Logik immer neu implementieren bei Technologiewechsel, wenn man diese mit PL/SQL, Stored-Procedures, Constraints und Triggern in die DB verschieben kann? Webserver mit API-Aufrufen wird sehr einfach.
Aber lest selber. Ein gewisser Charme ist ja dabei.
Habe selbst schon Ansätze gesehen, die in diese Richtung gehen. Aber irgend etwas sträubt sich in mir dagegen.
Was ich gesehen habe (in Production):
Kein ORM-Framework sondern Plain SQL und viele SP.
Kein Webserver sondern direkter Zugriff auf die DB via Rich-Bitch-Fat-Client (Multiuser-Env)
Hat das ganze funktioniert: Im großen und ganzen.
War es schön: Definitiv nicht, bin zu wenig in PL/SQL, zudem noch sehr viel SQL-Code auf der Client-Seite.
Vorteile: Daten können angereichert werden (z.B. Erstelldatum, Änderungsdatum)
Der ein oder andere Roundtrip (Client - DB) kann gespart werden, wenn beim Anlegen zwei Datensätze eine 1-zu-1-Beziehung haben und der FK gleich mitaktualisiert werden kann.
Was haltet ihr von solchen Experimenten? Wenn es auch nur ein Gedankenexperiment sein sollte.