Klaus Mock: Datenbanken als Allheilmittel?

Beitrag lesen

Hallo,

Nunja. Deren Anwendungsgebiete sind aber meist auf recht spezielle Anwendungsgebiete (LDAP - klassischer Verzeichnisdienst; auch wenn es innerhalb dieser Anwendung recht flexibel ist) oder Systemgebunden (Dateisysteme).
Wenn ich micht nicht komplett irre, sind beides Beispiele für hierarchische Datenbanken.
Das ist schon richtig. Aber beides nicht typische Datenbanken die man in Programmierprojekten einsetzt. Darauf wollte ich hinaus.

Abgesehen davon, dass alles, was irgendwann einmal an Software gemacht wurde, für mindestens ein Programmierprojekt entwicktelt wurde, stimmt es für LDAP schon, dass es nicht zu den beliebtesten Protokollen in Programmierprojekten gehört. Aber ich persönlich kenne doch relativ viele Programme, die auf Dateisysteme schreibend und lesend zugreifen *g*.

Ja. Es ging mir wie gesagt um die Programmierung. Ist ja ganz nett wenn das System XYZ gut mit Daten umgehen kann oder auch nicht. Nur hab ich als Programmierer davon nicht viel, wenn ich es nicht mehr oder weniger direkt ansprechen kann.

Natürlich kann man Notes auch programmieren. Afaik gibt es sogar eine SQL-Schnittstelle und auch ODBC/JDBC-Treiber http://www-10.lotus.com/ldd/toolkits. Wie gut das ganze funktioniert, weiss ich nicht. Aber darum geht es Dir ja nicht, denke ich mal.

Zudem setzt es eine spezielle Software voraus.
Welches retaionale Datenbanksystem kennst Du, welches nicht spezielle Software voraussetzt?
Menno. Was ich meinte wird doch in den nächsten Zeilen sichtbar.

s.o.

Ausserdem gibt es noch die embedded-DB-Systeme die nur über eine Bibliothek angesprochen werden. Dann brauchst Du quasi nur noch Dateizugriffsrechte und keinerer laufende Dienste/installierte Software.

Ja, aber ich denke doch, dass solche System eher die Ausnahme sind.

Fakt ist aber, daß ich mit ODBC/JDBC und SQL ziemlich viele DB-Systeme ansprechen kann. Andere Zugriffsschichten sind bei weitem nicht so verbreitet. Und darum ging es mir.

Ich will ja nicht lästig sein, aber hast Du Dir DBI und dessen Treiber-Umfang einmal genauer angesehen(http://search.cpan.org/modlist/Database_Interfaces/DBD)?
Und das Perl und dessen Datenbankzugriffsschicht nicht verbreitet ist, kann man so nicht sagen. Andererseits ist Perl wahrscheinlich für Dich nicht relevant, da es eine Scriptsprache ist, und daher für 'richtige' Programmierarbeit nicht in Frage kommt, oder so ähnlich *g*?

Worin unterscheiden sich den Sternstrukturen und Baumstrukturen ?

Baumstrukturen sind ja hierarchisch angeordnet. Mit einer ID und einer Parent-ID kann man an sich einen Baum ganz gut auch in relationalen Systemen abbilden, auch wenn die Rekursion Probleme bereitet.

Will man dagegen beispielsweise Objekte, die einerseits gleiche Merkmale aufweisen, andererseits jedoch auch unterschiedliche Eigenschaften haben, dann funktioniert das in relationalen Datenbanken nicht wirklich.

Ein (vielleicht nicht unbedingt praxisnahes) Beispiel:

Nehmen wir an wir haben ein System das Dokumente, Projekte, Aufträge und Kunden verwaltet. All diese Objekte haben ganz unterschiedliche Eigenschaften. Für das Zugriffsberechtigungssystem will man aber alle Objekte gemeinsam verwalten können. Ich kann entweder für jeden Objekttyp zusätzliche Berechtigungsstrukturen aufbauen und die Abfragen so gestalten, dass sie eine gemeinsame Sicht ermöglichen. Allerdings sind dann Änderungen am Berechtigungssystem für alle Objekttypen nachzuziehen. Oder aber ich entwickle eine gemeinsame Berechtigungsverwaltung, in der alle Objekte mittels ID und Objekttyp angesprochen werden, was allerdings zur Folge hat, dass ich keine Constraints mehr verwenden kann. (Ausser bei Informix, die afaik solche Foreign-Keys auf unterschiedliche Tabellen kann).

Wenn Du einen eleganten Lösungsansatz parat hast, wäre ich sehr interessiert daran.

Es ging mir nicht so sehr um Joeys Problem im Speziellen, sondern mehr um Datenbanken im Allgemeinen.

Mir auch;-) Wir beide haben anscheinend nur unterschiedliche Auffassungen von 'im Allgemeinen'.

Sorry Joey, dass ich dazu Dein Thread missbraucht habe.

Keine Sorge, Threaddrifts sind hier normal.

Grüße
  Klaus