Hallo, ich habe mir in SQL eine kleine Datebank gemacht, und möchte mich
mit Java damit verbinden.
Dies ist mein erster Versuch mit Datenbanken.
Wenn ich in Eclipse
[c]
public class d {
/**
* @param args
*/
public static void main(String[] args) {
Class.forName("org.hsqldb.jdbcDriver");
Connection con =
DriverManager.getConnection("jdbc.hsqldb:file:c:\te.db");
DriverManager.getConnection("jdbc.hsqldb:file:c:\\ddd.db3");
so?
Dann kommt der Fehler
Exception in thread "main" java.lang.Error: Unresolved compilation
problems:
Connection cannot be resolved to a type
DriverManager cannot be resolved
at d.main(d.java:8)
welches wäre das?
Ich hab mal
import java.sql.*;
import java.io.*;
import java.util.*;
drüber geschrieben, aber weiterhin Fehler.
Muss man in Windows eigentlich noch was verstellen?
Was mach ich falsch?
Das ist ebend das Problem wenn man gleich mit einer IDE anfängt. Wenn du
es auf der kommandozeile kompilierst sehen die Fehlermeldungen
hilfreicher aus.
Ich würde erstmal mit einem "Hallo World" anfangen, dennn für SQL und
java braucht man ein paar Grundlagen.
Wie gehen ich mit Exeption um?
ist es überhaupt sinnvoll das Programm in die main zu schreiben?
1
import java.sql.*;
2
3
public class d {
4
public static void main(String[] args) {
5
try {
6
Class.forName("org.hsqldb.jdbcDriver");
7
Connection con = DriverManager.getConnection("jdbc.hsqldb:file:c:\\ddd.db3");
Danke für deine Hilfe.
Die Java Grundlagen kenne ich schon.
So klappt es auch ohne Fehler. Allerdings kann ich es nicht laufen
lassen. Die Meldung wieder angehängt.
Danke
Haha du kennst also die Grundlagen, aber erkennt nicht das die Meldung
überhaupt nichts mit dem Programm zu tun hat sondern das Eclipse ein
Problem mit dem Zeichensatz beim Speichern einer Datei hat?
ich bin kein Freak, bisher kam dieser Fehler noch nicht und ich weiß
nicht was ich machen soll, damit es läuft.
Ich habe bisher eine Vorlesung zu Java gehabt, und möchte nun für die
nächste etwas vorarbeiten.
hsql ist eine Krankheit, nimm "derby.jar" (IBM) alias cloudscape.
Mit dem Fehler hat es freilich nix zu tun, aber mit den samples kommst
du weiter.
Kennst du http://www.squirrelsql.org/. Ein Frontend für alle Dingens für
die es ein jdbc interface gibt.
Sorry bei Eclipse kann ich nicht helfen. Kann nur vermuten das beim
Kopieren aus dem Internet sich ein ungültiges Zeichen eingeschlichen
hat. mache mal die Datei leer und schreibe den kompletten Inhalt ab (das
Trainert gleich).
okay danke ich glaub es klappt.
Vielen Dank für Eure Hilfe soweit.
Und in der Datei ddd.db3
sollen jetzt einfach die SQL Befehle stehen, die meine Tabelle
definieren?
Im Internet und in den Büchern steht man muss noch ODBC Treiber
installieren, und in der Systemsteuerung hinzufügen, was hat es damit
auf sich, wieso klappt es hier ohne diese Sachen?
was in der Datei ddd.db3 steht entscheidet der Treiber (
org.hsqldb.jdbcDriver ) es kann klartext oder auch nur unlesbare Daten
sein.
Einen ODBC Treiber braucht du nur wenn du über ODBC auf die Datenbank
zugreifen willst, java bringt in den meisten Fällen aber seinen eigenen
Treiber mit, für java braucht du also kein ODBC.
ODBC braucht du wenn du z.b. mit Excel oder Access auf die Datenbank
zugreifen willst.
Aber wenn ich jetzt mit SQL auf die Datenbank zugreifen möchte, muss die
doch auch richtig erstellt sein(wenn ich z.B. einen neuen Eintrag machen
möchte usw) , verstehe ich das richtig, dass man die Datenbank vorher
erstellen muss?
Oder kann ich jetzt in Java beginnen, die Tabellen zu erzeugen?
> wird die Exception ausgelöst
und warum schreibst du nicht hin, wie die Exception heist und welchen
Text sie hat?
Du hast jetzt erstmal eine Datenbankverbindung aufgebaut. Als erstes
muss du mit SQL eine Tabelle erzeugen wo du die Werte abspeichern
kannst.
Bei diesem Code wird "huhu" ausgegeben.
Verstehe ich das richtig, dass das eigentlich nicht sein sollte?
Ich weiß ja nicht was das für eine Exception ist...
Ich kenn jetzt org.hsqldb.jdbcDriver nicht, aber kann es sein das du dir
es es runterladen musst?
http://sourceforge.net/project/showfiles.php?group_id=23316
Dort bekommst du ein jar file (hsqldb.jar), das legst du in dein
Programm verzeichniss.
Java habe ich bloss mal private nebenbei gemacht. Ich finde Java
persönlich nicht sehr schön.
Für mich ist eine Datenbank erst eine wenn ein richtiger Server läuft(
Mysql, Postgresql, Oracle, MSSQL) dann kreift man über eine
Schnittstelle (ODBC, JDBC) darauf zu.
Du sollest aber wirklich erstmal noch mit den Grundlagen zu java
beschäftigen, alle wollen gleich ganz gross anfangen. Dazu gehört auch
das lesen der doku von Sun und das selbständige lösen von Fehlern (auch
mal ohne Goolge, einfach mit Probieren und dabei lernen). Was hilft es
dir wenn dir jemand den Quellcode schreibt du aber bei jede kleinen
Fehlermeldung andere Leute fragen muss.
habs irgendwie geschafft das jar zu importieren, danke;)
jetzt noch
huhu
java.sql.SQLException: No suitable driver found for
jdbc.hsqldb:file:c:\ddd.db3
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at d.main(d.java:7)
Wiegesagt ich kenn Eclipse nicht, es sollte im "Arbeitsverzeichniss" der
Anwendung liegen und im ClassPaht muss der "." eingetragen sein -
bestimmt gibt ein in Eclipse ein jar mit einzugegen wo weiter Klassen
liegen.
das jar hab ich jetzt einbezogen, eine exception
java.sql.SQLException: No suitable driver found for
jdbc.hsqldb:file:c:\ddd.db3
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at d.main(d.java:7)
kommt jetzt. Was könnte das sein?
zu deinem posting von eben:
ich möchte einfach nur wissen, wie ich mich mit einer Datenbank
verbinde, Befehle ausführe und daten auslesen kann.
Ich möchte dabei nicht rumtüfteln, oder auf Probleme stoßen, ich möchte
nur wissen wie es geht, ich will kein Ingenieur sein ;)
Warum dann Java?
Dann installier die mysql und schon kannst du dich mit dem mysqlclient
mit der DB verbinden und kannst sql-Befehle absenden.
Ich vermute immer noch das der Treiber nicht richtig gefunden wird, habe
jetzt aber keine Lust es hier nachzubauen.
Auch wenn es Dich annervt: Gib mal bei Google folgenden Suchstring ein:
java.sql.SQLException: No suitable driver found for jdbc.hsqldb
Gleich der erste Treffer...
Gruß
Markus
P.S.: Vieleicht findest Du ja noch jemanden, der Dir 'ne fertige Lösung
liefert...
@Daniel F.
> meine kristallkugel sagt hibernate> um welches db-system gehts hier überhaupt?
Eventuell sollte man den Thread erstmal durchlesen befor man kommentare
abgibt.
Ich habe mir das hsqldb Paket jetzt runtergeladen.
Dort ist eine Datei runManagerSwing.bat
Wenn man diese startet öffnet sich ein Programm, wenn man dann bei URL
jdbc:hsqldb:file:c:\neu
angibt wird auf C eine Datei
neu.script angelegt.
Jetzt kann man sich verbinden, mit dieser Vorkehrung.
Wenn ich jetzt mit dem Programm und der Datei an einen anderen PC gehe
und dort in Eclipse das ganze ausführe, gibt's wieder einen Fehler.
Muss man immer vorher das Programm hsqldb starten und einstellen?
Das kann aber doch nicht im Sinne des Erfinders sein, dass derjenige der
ein Programm bekommt erst noch mit dem Tool hsqldb rumspielen muss??!
Hallo,
das Thema ist zwar schon etwas älter, ich hatte aber das gleiche (/ein
ähnliches) Problem.
Die folgende Exception wurde geworfen:
java.sql.SQLException: No suitable driver found for
jdbc:hsqldb:mem:testdb
Der "Java Buld Path" war in Eclipse korrekt eingestellt.
(Projekt -> Properties -> Java Build Path -> Libraries -> Add External
JARs... : Pfad zu "hsqldb.jar" richtig angegeben)
Anfangs habe ich versucht die Datenbank auf die folgende Weise zu
öffnen: