Tom: Was muss eine Datenbankklasse können?

Beitrag lesen

Hello,

das Problem ist ein ganz anderes: Du versuchst hier nur hohle Wrapper(-Klassen) für bereits vorhandene Funktionalitäten vorzunehmen, diese also nur mit einem anderen Aspekt anzubieten. Das ist aber nicht der Sinn einer Datenbankklasse.

mMn muss eine Datenbankklasse im Webumfeld vor allem diese Dinge bewerkstelligen:

  • Allgemeine Bereitstellung der Connectivity zum Datenbankserver und der Datenbank
  • Bereitstellung diverser Informationen aus dem Scheme der Datenbank für die Applikation
      dazu gehören die Tabellen und ihre Relationen, die Datensatzbeschreibungen der Tabellen
  • Gewährleistung konkurrierender Zugriffe, insbesonders derjenigen mit Zeitlücke, also das
      logische pessimistische Locking oder die Überwachung durch Conflictcounter, Timestamp oder
      sonstige gleichwertige Maßnahmen, wenn man es nicht durch Trigger und Stored Procedures
      lösen kann (was ich persönlich für sauberer halte)
  • Verwaltung von vertikalen Zugriffsrechten, , wenn man es nicht durch Trigger und Stored
      Procedures lösen kann (was ich persönlich für sauberer halte)
  • Logging der tatsächlichen Fehlerursachen für die Adminsitration und Bereitstellung von
      netten Textchen und Strategien für die Endbenutzerseite
  • Aufbereitung von Daten für die Übernahmen aus und die Anzeige in HTML (Escaping, Radios,
      Checkboxen, Selects, Feldlängenbeschränkungen, Defaults, ...)

Grundsätzlich sollte dabei immer eine Lösung bevorzugt werden, bei der die Aufgaben nicht durch die API, sondern durch die Datenbank (Trigger, Stored Procedures) erledigt werden. Da dies aber nicht bei allen in Webumfeld üblichen DBMS möglich ist, ist es eine schöne Aufgabe[tm] für eine Datenbankklasse.

Alle Zugriffe dürfen dann NUR noch über die Datenbankklasse stattfinden.

Liebe Grüße aus dem Cyberspace

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de