Beim Verbinden eines Applets mit einer Access DB mit der Methode jdbc: ucanaccess erhalte ich den folgenden Fehler:
%Vor% Der Code, den ich für das Applet verwendet habe, ist wie folgt ( add()
und setBounds()
werden aus init()
entfernt):
Hinweis: Java-Version "1.8.0_141"
Warum erhalte ich diesen Fehler?
Ihr Code hat zwei schwerwiegende Fehler:
value
ist kein gültiges SQL-Schlüsselwort. Es sollte values
sein. [Bei der nachfolgenden Bearbeitung der Frage behoben.]
Außerdem ist user
ein reserviertes Wort (Funktionsname). Wenn Sie es also als Tabellennamen verwenden möchten, sollten Sie es in eckige Klammern einschließen.
Die richtige Lösung für die Ausgabe von # 2 ist die Verwendung einer parametrisierten Abfrage , z. B.
%Vor% Dies ist ein Kompilierungsfehler, dh Sie müssen entweder Ihre stmt.executeUpdate(sql);
mit try-catch-Anweisung umgeben oder Ihre Methode sollte eine SQLException
:
oder
%Vor%BEARBEITEN: Übrigens sehe ich nicht, ob Sie die Oracle JDBC-Treiberklasse für UCanAccess laden oder registrieren, bevor Sie die Datenbankverbindung öffnen:
%Vor% Also hast du es oder nicht? Wenn nein, sollten Sie es hinzufügen, bevor Sie Ihre Verbindung erhalten:
con = DriverManager.getConnection("jdbc:ucanaccess://H:/test/db.mdb");
Die Nachricht
%Vor%sieht wie ein Kompilierfehler aus, also lautet die Frage: Wie kompilieren / deployen Sie die Applet-Klassen und wo genau sehen Sie diese Fehlermeldung? IDEs wie Eclipse erstellen Klassen-Dateien auch im Falle von Kompilierungsfehlern, die die Fehlermeldung enthalten und ausgeben, die Sie auch in der IDE sehen können. Vielleicht gelingt es Ihnen nicht, die Applet-Klassen zu aktualisieren und am Ende mit den gleichen alten Klassen zu testen, anstatt mit den geänderten Klassen, die immer wieder zur selben Nachricht führen.
Wenn Sie das Applet als Teil einer Webanwendung bereitstellen, kann der HTTP-Server die Klassendatei zwischenspeichern, wenn die Webanwendung als WAR-Datei bereitgestellt wurde. Außerdem tendieren Browser dazu, Klassendateien ziemlich aggressiv zwischenzuspeichern, so dass Sie sicherstellen sollten, dass der Cache des Browsers jedes Mal leer ist, wenn Sie einen neuen Test starten.
Tags und Links java jdbc ms-access applet ucanaccess