Hi!
- Also kurz gesagt, wenn ich jdbc in meinen java code eingebunden habe, sprich jdbc als abtraktionslayer benutze, so könnte ich einfach den parameter von mysql auf ne orakle oder postgres datenbank ändern oder? (falls jdbc das überhaupt unterstützt)
Wenn man das genau definieren will, sage ich, dass das kein Datenbankabstraktionslayer sondern ein Datenbank_zugriffs_abstraktionslayer ist. JDBC vereinheitlicht den generellen Zugriff, nicht aber den konkreten Umgang in Form von SQL-Statements.
Und selbst wenn man mal die SQL-Dialekte außer Acht lässt, muss man beim Programmieren gegen diesen Datenbank_zugriffs_abstraktionslayer noch Unterschiede in den Systemen berücksichtigen, so es da nicht eine vereinheitlichende Empfehlung gibt, aufgrund der die unterschiedlichen Verhaltensweisen (und sei es durch Simulation auf einigen Systemen) ausgeglichen werden. Konkrete Beispiele: Prepared Statements lassen sich üblicherweise problemlos simulieren. Autoincrement-Werte versus Sequenzen ist problematischer. Autoincrement-Werte (MySQL, MS-SQL) stehen nach einem Datensatzeinfügen zur Verfügung, bei Sequenzen (Oracle) muss man vorher den neuen Wert abfragen (oder diese Abfrage ins SQL-Statement einbauen). Sequenzen müssen in Oracle extra angelegt werden. Wenn man das in MySQL simulieren will, braucht man eine weitere Tabelle (oder eine für alle Sequenzen). Will man also da eine Vereinheitlichung reinbringen, muss man sich auf eine Vorgehensweise festlegen und die jeweils für andere Systeme simulieren.
Ich denke ich bin weitestgehenst fit, wird schon ausreichen :-))))))
Nur nicht in Rechtschreibung :-) "weitestgehend"
Lo!