połączenie z bazą danych mysql

0

Na prv.pl utworzyłem bazę danych mysql. Jak powinien wyglądać przykładowy kod midletu łączącego
się z taką bazą danych przez internet ?

0

utworzyłem drugą baze na yoyo.pl
otrzymałem nazwe serwera:mysql2.yoyo.pl port:3306 nazwe bazy,użytkownika i hasło
jednak program nie może się połączyć z bazą

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class klasa {

public static void main(String args[]) {
Connection con = null;

try {
  Class.forName("com.mysql.jdbc.Driver").newInstance();
  con = DriverManager.getConnection("jdbc:mysql://mysql2.yoyo.pl:3306/nazwa bazy",
    "uzytkownik", "haslo");


  if(!con.isClosed())
    System.out.println("Successfully connected to " +
      "MySQL server using TCP/IP...");

} catch(Exception e) {
  System.err.println("Exception: " + e.getMessage());
} finally {
  try {
    if(con != null)
      con.close();
  } catch(SQLException e) {}
}

}
}

Błąd:
Exception: 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.java:156)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:284)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2569)
at com.mysql.jdbc.Connection.<init>(Connection.java:1485)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at klasa.main(klasa.java:12)

  • END NESTED EXCEPTION **

Last packet sent to the server was 16 ms ago.

0

Jak dla mnie connection refused = komp stoi, na porcie nie ma servera.

0

a jaka jest nazwa bazy? bo jesli "nazwa bazy" to w linkach spacja jest raczej niedozwolona :-)

0

Program już działa założyłem baze na db4free.net.
Do wyszukiwania informacji używam klasy Statement

Statement s = con.createStatement();
ResultSet rs = s.executeQuery("SELECT * FROM kontakty") ;

Gdy przeniose ten kod do midletu dostaje błąd:
Error preverifying class klasa VERIFIER ERROR klasa.startApp()V: Cannot find class java/sql/Statement
mam dołączone biblioteki JRE i Connector/J

0

Tak, ale w JME nie masz do dyspozycji paczki java.sql. Należy przerobić dostęp na dostęp po webservices lub xml (via Http)

1 użytkowników online, w tym zalogowanych: 0, gości: 1