pgoetz: Mehrere SQL-Abfolgen in einer Exception

Beitrag lesen

Servus,

[...]
ohne Ilja geht ja fast kein Datenbankthread :-)

Ich denke, aufgrund seiner Kompetenz im Bereich DB ist das gut für die jeweiligen Threads.

[...]
JDBC ist ja (laut unserem Prof) auch eine Persisenzschicht, bzw. ein Dataabstraktionslayer. Man könne dann die Datenbank dahinter austauschen und die SQL-Befehle im Code lassen.

Das stimmt. Allerdings werden bei SQL-Statements in der Regel sehr schnell DBMS-abhängige Erweiterungen verwendet (Beispiel Paging von Ergebnissen). Das kann man über einen über JDBC gelegten Abstraktionslayer (z.B. JPA) sehr schön abkapseln und in der jeweiligen Strategy für das konkrete Produkt (was dann aber zentral vom JPA-Provider gepflegt wird) verschieden implementieren.

Wenn ich zum Beispiel aber von JDBC (mySQL) auf MSSQL wechsle, dann geht ja JDBC nicht, sondern bräuchte hier ja ODBC ne? D.h., ich müsste die SQL-Statements erneut anpassen.

Wenn es "Standard"-SQL ist, geht das. Es gibt bestimmt auch für MSSQL einen JDBC-Treiber, oder?

[...]
Wie würde das in etwa rein interessenhalber aussehen, im Endeffekt sind doch das dann auch SQL-Befehle oder nicht, was ich irgendwie rüberjagen muss, speziell für ein DBMS (Bsp. mySQL)

Das kommt auf den Treiber an. Ich habe noch nicht in die Implementierung von einem geschaut. Aber ich denke, in den meisten Fällen wird hier kein SQL, sondern ein bereits vorverarbeitetes Protokoll verwendet. Hier kommt es halt darauf an, welche Schnittstellen die Datenbank nach außen für einen solchen Treiber anbietet. Also irgendeine Art Kommunikation von außerhalb des Servers (in der Regel Netzwerk).

Schöne Grüße,

Peter