PDA

View Full Version : [MySql]Java....help con il driver!!


baycoreano
22-01-2008, 15:13
Ciao ragazzi avrei bisogno di un aiuto.

In pratica ho creato il mio bel database con MySql, contenente varie tabelle.
Ora devo creare una classe Java per testare il mio database, ed effettuare varie operazioni di inserimento, modifica, selezione etc...


Mi carico il driver di tipo bridge jdbc-odbc:

String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
Class.forName(driver);

Creo la stringa di connessione:

String url = "jdbc:odbc:farmaciadb";

e creo la connessione

Connection con = DriverManager.getConnection (url,"nello","nello");


Ed ecco l'errore che mi trovo, riferito al metodo getConnection.

java.sql.SQLException: [Microsoft][Driver Manager ODBC] Nome origine dati non trovato e driver predefinito non specificato.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcConnection.initialize(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at progetto.prodotti.main(prodotti.java:19)


Qual'è il problema??

Grazie mille!!

isAlreadyInUse
22-01-2008, 15:15
Se fai cosi devi crearti un origine dati odbc in winzoz...

baycoreano
22-01-2008, 15:24
Se fai cosi devi crearti un origine dati odbc in winzoz...

Comee?

Sono andato in strumenti di amministrazione -> origine dati(ODBC) -> amministrazione origine dati clicco si aggiungi

che metto?? SQL server??

isAlreadyInUse
22-01-2008, 15:28
:cry: che centra SQLServer con MySQL

baycoreano
22-01-2008, 15:36
No chiedevo....
se sai come devo fare e mi puoi dire in che modo ti ringrazio!!!

isAlreadyInUse
22-01-2008, 15:44
Lascia stare gli odbc
Scaricati questo (http://dev.mysql.com/downloads/connector/j/5.1.html)
includilo nel progetto e usalo cosi


Class.forName("com.mysql.jdbc.Driver");
Connection c = DriverManager.getConnection("dbc:mysql://SERVER/DATABASE?user=root&password=root");

baycoreano
22-01-2008, 15:49
Ora scompatto l'archivio e poi??

Se non sbaglio devo mettere il jar in qualche cartella vero??
In quale??

vladix
22-01-2008, 16:10
se hai installato mysql query broswer , il jar con il driver lo trovi sotto C:\Programmi\MySQL\MySQL Tools for 5.0\java\lib (mysql-connector-java-5.0.4-bin.jar). Poi un po di documentazione su come conneterti da java lo trovi sempre sul tuo pc sotto C:\Programmi\MySQL\MySQL Server 5.0\Docs\manual.chm e cerchi la voce "List of Examples" :read: .

baycoreano
22-01-2008, 16:21
se hai installato mysql query broswer , il jar con il driver lo trovi sotto C:\Programmi\MySQL\MySQL Tools for 5.0\java\lib (mysql-connector-java-5.0.4-bin.jar). Poi un po di documentazione su come conneterti da java lo trovi sempre sul tuo pc sotto C:\Programmi\MySQL\MySQL Server 5.0\Docs\manual.chm e cerchi la voce "List of Examples" :read: .


Ho installato MySql ma il path C:\Programmi\MySQL\MySQL Tools for 5.0\java\lib non c'è.

Scusa se ti disturbo ma volevo capire effettivamente ora come devo fare per potermi connettere al mio database da java.

vladix
22-01-2008, 17:07
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Conn {
public Conn() {
}

public static Connection getConnection (){
Connection x = null;
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
x = DriverManager.getConnection("jdbc:mysql://localhost/Test" , "root" , "pass");
} catch (SQLException e) {
//TODO
} catch (IllegalAccessException e) {
//TODO
} catch (InstantiationException e) {
//TODO
} catch (ClassNotFoundException e) {
//TODO
}
return x;
}

public static void main(String [] vladix){

Connection conn = getConnection();

Statement stmt = null;
ResultSet rs = null;

try {
stmt = conn.createStatement();
rs = stmt.executeQuery("SELECT * FROM vroster");

if (stmt.execute("SELECT * FROM vroster")) {
rs = stmt.getResultSet();
}

} catch (SQLException e) {
// TODO
}
}
}


poi per eseguire (il jar deve stare nella stessa cartella della classe)C:\samples\conn>javac Conn.java

C:\samples\conn>java -classpath C:\samples\conn;mysql-connector-java-5.0.4-bin.jar Conn