Anzeige:
Ergebnis 1 bis 7 von 7

Thema: Gibt es Cross-Datenbank Kompatibilitätsbibliotheken?

  1. #1
    Registrierter Benutzer
    Registriert seit
    17.09.2001
    Beiträge
    1.182

    Gibt es Cross-Datenbank Kompatibilitätsbibliotheken?

    Hallo,

    Gibts eigentlich sowas wie Datenbank-Abstraktionsbibliotheken, welche eine Untermenge von den von verschiedenen Datenbanken unterstützten Features bieten und z.B. SQL-Statements welche man Ihnen übergibt so anpassen, dass diese unter der aktuellen Datenbank funktionieren?

    Wäre eigentlich ganz praktisch ;-)
    OpenSource und/oder java noch besser.
    Geändert von Lin728 (21-08-2017 um 15:54 Uhr)

  2. #2
    Registrierter Benutzer
    Registriert seit
    19.08.2004
    Beiträge
    404
    Meinst Du evtl. sowas wie JDBC? Oder für Perl zum Beispiel das DBI Modul?

  3. #3
    Registrierter Benutzer
    Registriert seit
    22.06.1999
    Beiträge
    677
    Zitat Zitat von michael.sprick Beitrag anzeigen
    Meinst Du evtl. sowas wie JDBC? Oder für Perl zum Beispiel das DBI Modul?
    Oder ODBC?

    Bei Perl DBI bin ich mir nicht so sicher. Das letzte mal als ich damit programmiert habe, müsste man SQL-Statemnets noch explizit angeben.

  4. #4
    Registrierter Benutzer Avatar von mwanaheri
    Registriert seit
    28.10.2003
    Ort
    Bayreuth
    Beiträge
    569
    oder ein Level höher: So was wie hibernate?
    Das Ziel ist das Ziel.

  5. #5
    Registrierter Benutzer Avatar von Waxolunist
    Registriert seit
    19.06.2006
    Ort
    Wien
    Beiträge
    485
    Nein, sowas gibt es nicht. Die Datenbankconnectoren sind zwar vereinheitlicht, aber SQL selbst nicht. Oder besser gesagt es ist zwar vereinheitlicht, aber nicht alle Datenbankhersteller halten sich vollständig daran.

    Alleine in meiner Arbeit (Oracle und MySQL) ist SQL schreiben jedes Mal anders. Alleine die Implementierung einer Datumsabfrage divergiert erheblich. Dazu kommen verschiedene Datentypen bei Zahlen.

    Sequences sind auch unterschiedlich implementiert. Ich sehe da keine Möglichkeit mit einer Abfrage alle Datenbanken oder zumindest die Big 5 (Oracle, MSSQL, Postgres, DB2, MySQL) zu unterstützen. Diese Schicht wäre für jede DB neu zu schreiben, auch schon alleine von der Performance her. Daher ist es in Projekten auch zumeist so, dass wenn man sich einmal für eine DB entschieden hat, diese beizubehalten gedenkt und sich um Kompatibilität zu anderen DBs nichts schert.

    Kommen noch stored Procedures ins Spiel, dann ist es ohnehin völlig aus.

    Da hilft auch Hibernate nichts. http://www.hibernate.org/361.html

    Keine einzige Datenbank ohne Issues. Und keine Datenbank wird voll ausgeschöpft in ihren Fähigkeiten.

    Meine Erfahrung sagt mir, dass man besser fährt, wenn man sich auf eine DB festlegt.
    Spezialitäten heute: PLSQL, TSQL, Java (alles mit Webanwendungen), Groovy, Grails, ASP.NET, Javascript, Python, Django
    Straight through, ohne Umwege ans Ziel

  6. #6
    Registrierter Benutzer Avatar von mwanaheri
    Registriert seit
    28.10.2003
    Ort
    Bayreuth
    Beiträge
    569
    Zitat Zitat von Waxolunist Beitrag anzeigen
    Keine einzige Datenbank ohne Issues. Und keine Datenbank wird voll ausgeschöpft in ihren Fähigkeiten.
    Genau da liegt der Haken. Wenn man nur Abfragen nimmt aus der Ersten Stunde von SQL für Anfänger kommt man noch einigermaßen hin. Dann kriegt man aber Probleme in der Anwendung, weil man die Stärken der Datenbank nicht nutzt und die entsprechenden Sachen in der Anwendung nachbauen muss. Und das garantiert nicht so hinkriegt wie die Jungs von der Datenbank in jahrelanger Arbeit.
    'Kompatibel' _und_ 'optimiert' geht nun eben nicht.

    ps: Im o.g.Link keine Issues bei PostgreSQL, Firebird und DB2 UDB ;-)
    Geändert von mwanaheri (19-12-2006 um 10:39 Uhr) Grund: Teil überlesen
    Das Ziel ist das Ziel.

  7. #7
    Registrierter Benutzer
    Registriert seit
    19.08.2004
    Beiträge
    404
    Ach sorry - ich dachte erst, es ginge um die Schnittstelle bzw. die Konnektivität... Die Stelle mit dem "SQL Statements ... anpassen" hatte ich irgendwie überlesen.

    Streicht mein Posting oben

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •