Grazie
pMB
www.proghettolab.it
// file EsempioJDBC.java
import java.sql.*;
public class EsempioJDBC {
public static void main(String args[]) {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch (ClassNotFoundException e) {
System.out.println(e.toString());
System.out.println("Il driver non può essere caricato.");
System.exit(1);
}
try {
Connection conn =
DriverManager.getConnection("jdbc:odbc:impiegati","","");
Statement stmt = conn.createStatement();
ResultSet rs= stmt.executeQuery("SELECT nomi FROM impiegati");
while(rs.next()) {
System.out.println(rs.getString("nome"));
}
rs.close();
stmt.close();
conn.close();
} catch (SQLException se) {
System.out.println(se.getMessage());
se.printStackTrace(System.out);
System.exit(1);
}
}
}
Gli errori sono:
java.lang.NoClassDefFoundError: VRML/Java_EAI/EsempioJDBC (wrong name:
EsempioJDBC)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:493)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:111)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:248)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
Exception in thread "main"
[Microsoft][Driver Manager ODBC] Nome origine dati non trovato e driver
predefinito non specificato.
java.sql.SQLException: [Microsoft][Driver Manager ODBC] Nome origine dati
non trovato e driver predefinito non specificato.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6031)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:6188)
at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:2458)
at
sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:320)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:163)
at java.sql.DriverManager.getConnection(DriverManager.java:517)
at java.sql.DriverManager.getConnection(DriverManager.java:177)
at VRML.Java_EAI.EsempioDB.main(EsempioDB.java:23)
Risolvi il problema creando una risorsa ODBC col nome che usi nel codice
("impiegati") e associando a quel nome il DB Access (forse impiegati.mdb).
Controlla bene la stringa passata al DriverManager....credo di ricordare che
basta "impegati".
I hope this helps.
Dan.
[Microsoft][Driver ODBC Microsoft Access] Parametri insufficienti. Previsto
1.
java.sql.SQLException: [Microsoft][Driver ODBC Microsoft Access] Parametri
insufficienti. Previsto 1.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6031)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:6188)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(JdbcOdbc.java:2494)
at
sun.jdbc.odbc.JdbcOdbcStatement.execute(JdbcOdbcStatement.java:334)
at
sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(JdbcOdbcStatement.java:249)
at VRML.Java_EAI.EsempioDB.main(EsempioDB.java:25)
e la linea 25 è
ResultSet rs= stmt.executeQuery("SELECT nomi FROM impiegati");
Perchè i parametri sono insufficienti?
Dov'è l'errore?
Grazie ancora!
pMB
www.proghettolab.it
Dan <dno...@supereva.it> wrote in message
aracvi$lfe$1...@fata.cs.interbusiness.it...
Molto strano.....
L'unica cosa che mi viene in mente è che la query sia sbagliata!
Prova a controllare che nel DB esista una tabella "impiegati" con un campo
"nomi".
I db solitamente non sono case sensitive quindi la querycome l'hai scritta
tu dovrebbe essere corretta.
Ah, un'altra cosa: per correttezza il campo dovrebbe chiamarsi "nome" e non
"nomi".