# MySQL



## stetabar (19. Feb 2005)

hallo,

wie kann man aus einem japplet ein verbindung zu einer mysql-tabelle herstellen?
wie müsste die syntax dazu aussehen?
nehme an, dass man url, datenbank,  benutzer,  passwort usw. eingeben muss...

irgendwelche vorschläge, wie es am einfachsten zu generieren ist?


----------



## bambi (19. Feb 2005)

Schon mal in der Suche hier im Forum nachgeschaut? Da findest Du doch sicher was. :wink:
Gut's Naechtle...


----------



## stetabar (19. Feb 2005)

also hab mir treiber geladen und auch versucht die verbindung herzustellen...

aber besteht auch die möglichkeit, das nicht als localhost, sondern auf ne tabelle, die auf nem anderen server ist, zu zugreifen???

wenn ja, muss ich nur anstelle vom localhost die url angeben???

geht irgendwie nich so ganz...

jemand ne idee?

danke


----------



## bambi (19. Feb 2005)

am besten waer's auf jeden fall, wenn du mal postest, was du schon hast.

Falls du auch 'ne exception oder irgendeinen fehler bekommst, dann "her damit!".

da kann man dann am besten was sagen/helfen...


----------



## stetabar (19. Feb 2005)

hab nach dem FAQ versucht mir ne verbindung aufzubauen, aber stoße schon da auf probleme.

wollte nur schon direkt mal mit der url anfragen...
aber vielleicht fangen wir doch mal klein an.. 

also ich lade zuerst den treiber...

mit 

```
try 
 { 
    Class.forName("org.gjt.mm.mysql.Driver"); 
 } 
 catch(ClassNotFoundException cnfe) 
 { 
    System.out.println("Treiber kann nicht geladen werden: "+cnfe.getMessage()); 
 }
```

erste frage, zeile 3...muss das so stehen bleiben?
oder muss da was geändert werden?

dann die verbindung...


```
try 
 { 
    conn = DriverManager.getConnection("jdbc:mysql://" + dbHost + ":" + dbPort + "/" + dbName, user, passwd); 
 } 
 catch(SQLException sqle) 
 { 
    System.out.println("Verbindung ist fehlgeschlagen: " + sqle.getMessage()); 
 }
```

da wird der string conn ja nachher ungefähr so aussehen: "jdbc:mysql://meinepage.de:3306/DB,name,passwort"

aber überall steht conn so definiert:

```
private Connection conn;
```

das scheint aber nich zu passen, weil immer die Fehlermeldung 
non-static variable conn cannot be referenced from a static context
kommt...

ne idee, was ich da falsch mache?


----------



## stetabar (19. Feb 2005)

ok, also die Fehlermeldungen sind weg....
jetzt muss ich das ganze mal testen...
werd mal ne main methode schreiben, arbeite ich eigentlich mit SQL Strings?
also Select und so?


----------



## stetabar (19. Feb 2005)

also er macht was, aber ich bekomme keine verbindung!

Access denied for user: 'root@zahlenfolge.versanet.de' <Using password = YES>

oder ist access denied schon gut, weil er was findet?


----------



## stetabar (19. Feb 2005)

so, letzer stand bevor ich schlafen gehe....

hab das gleiche Problem auch bei jemand anderem gefunden werde aber nicht ganz schlau daraus...

http://www.java-forum.org/de/viewtopic.php?t=11785&highlight=verbinden

also bekomme ne sehr ähnliche fehlermeldung...


```
Error message: Communications link failure due to underlying exception:

** BEGIN NESTED EXCEPTION **

java.net.SocketException
MESSAGE: java.net.ConnectException: Connection refused: connect

STACKTRACE:

java.net.SocketException: java.net.ConnectException: Connection refused: connect

        at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.ja
va:151)
        at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:280)
        at com.mysql.jdbc.Connection.createNewIO(Connection.java:1765)
        at com.mysql.jdbc.Connection.<init>(Connection.java:430)
        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java
:268)
        at java.sql.DriverManager.getConnection(DriverManager.java:512)
        at java.sql.DriverManager.getConnection(DriverManager.java:171)
        at mysql.initDB(mysql.java:39)
        at mysql.<init>(mysql.java:15)
        at mysql.main(mysql.java:65)


** END NESTED EXCEPTION **
```

hat da jemand ne idee?


----------



## bronks (19. Feb 2005)

stetabar hat gesagt.:
			
		

> ... Access denied for user: 'root@zahlenfolge.versanet.de' <Using password = YES> ...


Auf jeden Fall ist jetzt sichergestellt, daß der Server ansprechbar ist und deine Anweisungen empfängt. Auf dem Server wird wohl eingestellt sein, daß man nur Lokal zugreifen darf. Das ist bei Comps, die im Internet stehen standard.


----------



## stetabar (19. Feb 2005)

problem dabei war, dass ich auf nichts zugreifen wollte, was was mit veranet zu tun hat.
beziehe darüber aber meinen internet anschluss...
also wollte der irgendwas aufmachen, nur nich das was ich wollte...

aber ich versuche gerade das letzte problem zu beheben, aber ich werde aus der problem-
lösung in dem anderen beispiel nicht ganz schau...


----------



## stetabar (19. Feb 2005)

danke an die helfer, das problem ist gelöst.
wenn man nen fehler in der url schreibt sollte man schlafen gehen und es am nächsten morgen sehen... 
also erstellt jetzt verbindung und kann die auch wieder schließen.
hoffe auch, dass ich damit dann auch arbeiten kann...


----------

