Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Wenn ich mir aus einer Datenbank alle Datensätze (SELECT * FROM table) ausgeben lasse funktioniert es ohne Probleme.

Wenn ich nun eine bestimmte Spalte ausgegeben haben möchte (SELECT name FROM table) bekomme ich folgende Fehlermeldung:


SQL Error: java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver]Ung³l

tiger Deskriptorindex 20 S1002

Wie ihr seht nehme ich zum testen eine Accessdatenbank und ODBC.

Außerdem interessiert mich die Frage ob auf Datenbanken zugegriffen werden kann ohne einen TreiberManager wie ODBC zu benutzen (also nur durch Java).

Geschrieben

Java intern gibt es die JDBC-API um Datenbankzugriffe zu machen.

Ganz ohne einen Treibermanager wie JDBC oder ODBC geht es meines Wissens nicht oder nur mit einen eigenenen Bibliothek für jede einzelen Datenbank.

Wenn die ODBC verwendet geht, dir übrigens meines Wissens nach die Platformunabhängigkeit verloren.

Mein Tip: Versuch es mal mit der JDBC

Geschrieben

JDBC ist die Brücke zu den TreiberMangern. Bei Windows ist das halt ODBC, ist schon klar das die Plattformunhabhägigkeit verloren geht. Deswegen wüsste ich auch gern ob es eine Möglichkeit ohne Treibermanger gibt.

Geschrieben

Hallo,

alles was du benötigst, ist ein Typ 4 JDBC Treiber. Diese sind komplett in Java geschrieben und greifen direkt auf die Datenbank zu.

Eine "leider nicht vollständige" Übersicht über verfügbare Treiber findest du unter http://industry.java.sun.com/products/jdbc/drivers .

Für Access gibt es so einen Treiber nicht. Wenn du allerdings die Microsoft Jet Engine einsetzt, sollen die MSSQL Treiber funktionieren. Ich habe das allerdings mal versucht und nicht hinbekommen.

Gruß Jaraz

  • 6 Jahre später...
Geschrieben

Diese Frage könnte eigentlich auch ins DB-Forum, aber hier passt sie m.e. genauso, deshalb Frage ich hier mal nach. Folgendes:

Ich versuche mit SQuirreL auf eine Gupta SQLBase zuzugreifen. Da SQuirrel eine reine Java - Anwendung ist, muss ich hier einen JDBC-Treiber verwenden. Den gibt es auch, er funktioniert aber nicht korrekt. Jetzt bräuchte ich zum Testen einen JDBC-ODBC Treiber. Aber was für einen kann ich da verwenden? Irgendwie weiß ich da nicht so recht weiter...:confused::confused:

Geschrieben (bearbeitet)
JDBC ist die Brücke zu den TreiberMangern. Bei Windows ist das halt ODBC

Also das ist falsch. Es gibt den jdbc:odbc Bridge Treiber, der als extrem langsame Notlösung vorhanden ist, um aus Java heraus auf ODBC Datenquellen zuzugreifen. Aber jeder mir bekannte Datenbankhersteller stellt auch native JDBC Treiber zur Verfügung, die ohne ODBC Treiber auskommen und dementsprechend auch plattformunabhängig sind.

JDBC Treiber gibt es für MSSQL, mysql, DB2, Oracle PostgreSQL, Infomix, uvm

etzt bräuchte ich zum Testen einen JDBC-ODBC Treiber. Aber was für einen kann ich da verwenden?

Naja es gibt nur einen. Wo genau ist denn dein Problem? Der Name zum laden des Treibers?

Dim

PS: ODBC gibt es auch auf anderen Betriebssystemen als Windows.

[edit]Man wo grabt ihr denn immer nur diese alten Threads aus.[/edit]

Bearbeitet von dr.dimitri

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...