# Mit JDBC-ODBC-Bridge auf entfernten Rechner zugreifen?



## Gast (15. Feb 2004)

Hallo,
habe gerade erfolgreich versucht eine Datenbankverbindung mit Java über die JDBC-ODBC-Bridge zu
öffnen. Diese Datenbank (es ist eine MS Access DB) liegt auf meinem lokalen Rechner und ich hatte vorher
für die Datenbank eine entsprechende ODBC-Datenquelle eingerichtet...

Nun meine Frage:
Was muss ich tun, wenn diese DB auf einem entfernten Rechner läge???
Ich muss doch dann vorher irgendwie ne Verbindung zu diesem Rechner herstellen, aber wie??
Ich möchte irgendwann dorthin, das die Datenbank zentral auf Rechner A liegt und das 
Javaprogramm sich von jedem x-beliebigen Rechner im Internet sich mit der DB verbindet - geht das
überhaupt mit der JDBC-ODBC-Bridge ???
Stimmt es, dass die ODBC-Einstellungen nur auf dem Rechner gemacht werden müssen, auf dem auf die
Datnbank liegt??? Zum Beispiel, wenn auf Rechner A die Datenbank liegt, muss man nur dort für diese
Datenbank eine ODBC-Datenquelle einrichten, und die DB-Applikation, die ich schreibe, läuft dann auf
Rechner B und verbindet sich mit Rechner A und kommuniziert dann mit der Datenbank über die
JDBC-ODBC-Bridge....oder?? Andernfalls würde es doch k. Sinn machen, denn dann müsste ja jeder user
erstmal in der Systemsteuerung rumfummeln,oder??

Wäre nett wenn mir jemand hilft....Vielleicht hat ja jemand ein kl. Quellcodefragment herumzuliegen...
Danke. 

anbei der Quellcode, so wie ich es jetzt gemacht habe: (funktioniert gut)

import java.io.*;
import java.sql.*;

public class Datenbanken111
{
	public static Connection con;
	public static DatabaseMetaData dbmeta;

	public static void main(String [] args)
		throws Exception
	{
		try
		{
			//lade die Jdbc-odbc-bridge
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			//erzeuge ein Connection-object
			con = DriverManager.getConnection("jdbcdbc:TESTDB1");
		}
		catch (Exception e)
		{
			System.out.println("Fehler beim DB-zugriff");
			System.exit(0);
		}

		dbmeta = con.getMetaData();
		System.out.println("DB-Zugriff war erfolgreich - Ausgabe von ein paar Metadaten...");
		System.out.println("Connection-URL:     "+dbmeta.getURL());
		System.out.println("Driver-Name:     "+dbmeta.getDriverName());
		System.out.println("Driver-Version:     "+dbmeta.getDriverVersion());

		System.out.println("Schliesse die Datenbank wieder....");
		con.close();
	}

}


----------



## Unregistriert (14. Okt 2009)

würde mich auch interessieren ?


----------



## Landei (14. Okt 2009)

Ich hab mal in nachgeguckt, was ich in einem alten Projekt mit Access-Zugriff angegeben hatte:

DRIVER=sun.jdbc.odbc.JdbcOdbcDriver
CONNECTION=jdbcdbc:DSN=MS Access Database;DBQ=c:\\private\\java\\jbproject\\ciao\\ciao_data.mdb;DefaultDir=c:\\Work\\coater;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;UID=admin

Bei DBQ sollten auch UNC-Pfade (mit \\...) funktionieren.


----------

