Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Politica, accademia e industria a confronto su mercato unico, sicurezza e competitività. Nei laboratori di Vimercate, Nokia ha mostrato le nuove generazioni di chip ottici e i test che ogni prodotto deve superare prima di arrivare sul mercato
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
Abbiamo assemblato e provato la Fiido Nomads Pro, evoluzione del modello da trekking già presente nella gamma, che migliora in tutto, soprattutto grazie al motore centrale, fluido e potente. Ottima app, costruzione solida e prezzo ok completano il quadro
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto
Lo chassis in Ceraluminium è il cuore di questo notebook in edizione 2026, un modello pensato per garantire produttività con le tipiche applicazioni di produttività personale e capace di offrire un'autonomia di funzionamento lontano dalla presa di corrente da riferimento. Potenza, facilità di trasporto e costruzione robusta tutto in un notebook compatto.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-06-2007, 14:30   #1
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
[java e mysql] Driver JDBC

Ciao a tutti, ho un problema che spero possiate risolvermi; in pratica in mysql ho creato una tabella con alcuni attributi che dovrei caricare da un programma in java; il programma viene compilato ma in esecuzione mi appare
"non trovo il driver com.mysql.jdbc.Driver"
Che devo fare per poter accedere al database?
Grazie
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 14:32   #2
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
...hai il jar contenente i driver jdbc nel classpath?
te ne accorgi solo al runtime perchè il driver viene caricato tramite reflection...
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 14:38   #3
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
Grazie per la risposta, purtroppo è la prima volta che tento questo tipo di cose e non saprei cosa guardare, mi sai indicare cosa vedere o se vuoi ti posto il codice così dai un'occhiata e mi sai dire dove sbaglio?
Grazie ancora, spero in una tua risposta
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 14:43   #4
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
non dipende dal codice...
dipende da come lo esegui...
Se lo stai lanciando dalla riga di comando devi fare qualcosa del genere:
java -cp jardeldriverjdbc.jar;. tuopackage.TuaClasse

Se stai usando Eclipse o qualche altro IDE devi semplicemente aggiungere questo jar alla build path del tuo progetto.
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 14:49   #5
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
Lo lancio da riga di comando;
mi rendo conto che ti sto rompendo, se hai voglia di scrivere il comando esatto ti ringrazio, altrimenti grazie lo stesso, cercherò altre strade, ho provato a lanciare il tuo comando avendo aggiunto il package e il nome della classe ma non ci sono stati risultati quindi evidentemente sbaglio qualcosa.
Ancora grazie
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 14:58   #6
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
non ci sono altre strade, il problema è che non hai il jar del driver jdbc nel classpath, e il comando per aggiungerlo è quello
Sicuro di aver scritto il percorso completo per questo jar?
Non è che il driver che usi è type 2 anzikè type 4 e ha bisogno anke di un jar contenente le librerie native?
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:01   #7
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
Forse sbaglio a cercare il percorso del jar, mi sapresti dire come verificarlo?
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:05   #8
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
....devi vedere dove hai copiato il jar del driver jdbc all'interno del tuo hard disk..
ovviamente da qui non posso vedere i file che hai nel tuo pc
prova a cercarlo con la funzione search di windows...
o al max riscaricalo e salvalo in una posizione che conosci.
Una volta che l'hai trovato prova dapprima a passargli un percorso assoluto del tipo:

java -cp C:\jdbc\jdbcdriver.jar;. mio.package.MiaClasse
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:14   #9
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
Ascolta solo 1 cosa, il file che mi serve è sqljdbc.jar?Se è questo, risolvo se inserisco il suo percorso nel classpath del sistema giusto?
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:21   #10
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
Allora, ho preso il file, si trova in C:\Documents and Settings\nome\Desktop\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.2\enu
In pratica il comando che devo digitare da terminale è
java -cp C:\Documents and Settings\nome\Desktop\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.2\enu\jdbcdriver.jar;. a.prova
dove a è il package e prova è il nome della classe.
Mi confermi questo?
Te lo chiedo perchè mi dà errore "exception in thread main java.lang.noclassdeffound error: and"
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:27   #11
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Se i percorsi da linea di comando contengono degli spazi puoi usare le virgolette, altrimenti java.exe pensa che le cose finiscano quando invece non sono ancora a metà.

java -cp ".;c:\Document And Settings...eccetera"

Per la connessione alla base dati usa il data source fornito insieme al driver. In questo modo, oltre a fare un salto nel nuovo millennio, ottieni anche la possibilità di verificare la corretta inclusione delle librerie del driver durante la compilazione. Per MySql, il data source è:

com.mysql.jdbc.jdbc2.optional.MysqlDataSource
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:35   #12
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
Allora, ho sostituito Class.forName("com.mysql.jdbc.jdbc2.optional.MysqlDataSource");
al posto di Class.forName("com.mysql.jdbc.Driver");
Ho lanciato dal prompt il comando
java -cp ".;C:\Documents and Settings\nome\Desktop\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.2\enu\jdbcdriver.jar;. a.prova"
ma il risultato è nulla, nel senso che dice:
Usage: java [-options] class [args...]
<to execute a class>
or java [-options] -jar jarfile [args...]
to execute a jar file>
In compilazione non dà errori, in esecuzione continua a dire che manca il driver.
Dove sbaglio?
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:45   #13
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
a.prova va fuori dalle virgolette.
Ma cmq sicuro che la tua classe si chiami prova?
di solito i nomi di classi vanno tutti con l'iniziale maiuscola
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:46   #14
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Che è?

No. Il DataSource lo usi nel codice al posto di DriverManager che è vetusto.

import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;

...

MysqlDataSource dataSource = new MysqlDataSource();
dataSource.setDatabaseName(...
dataSource.setPort(...
Connection conn = dataSource.getConnection(userName, password)
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:54   #15
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
Allora, per la classe avete ragione, nella fretta l'ho rinominata in Pro.java; il comando java -cp ".;C:\Documents and Settings\nome\Desktop\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.2\enu\jdbcdriver.jar;." a.Pro genera però l'errore "non trovo il driver com.mysql.jdbc.Driver"
In pratica lo stesso errore che ho anche se dò java Pro dopo la compilazione.
Non capisco proprio, il percorso per il jdbcdriver.jar è questo, perchè non lo prende?
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 15:57   #16
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
A PGI-Bis: se faccio l'import che hai indicato quando compilo dice che il package com.....optional non esiste
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 16:02   #17
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
scusa..
fai

jar tvf "C:\Documents and Settings\nome\Desktop\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.2\enu\jdbcdriver.jar" | findstr com/mysql/jdbc/Driver

e vedi se lì dentro vedi la classe che java non riesce a trovare...
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 16:03   #18
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Quote:
Originariamente inviato da squall15 Guarda i messaggi
A PGI-Bis: se faccio l'import che hai indicato quando compilo dice che il package com.....optional non esiste
Benissimo. La prima cosa che mi viene in mente è che qui non si parli di MySql ma di SQL Server di Ms. Sono due cose diverse.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 16:05   #19
squall15
Senior Member
 
L'Avatar di squall15
 
Iscritto dal: Sep 2006
Messaggi: 876
Non lo trova; mi dice FilenotFoundexception (impossibile trovare il percorso specificato).
Sai quale può essere il motivo?
squall15 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2007, 16:06   #20
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
eh direi di si ora che faccio caso al percorso del jar
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo Nokia Innovation Day 2026: la sovranità e...
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi In sella alla Fiido Nomads Pro: e-bike con motor...
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto ASUS Zenbook 14 (UX3480AA): tanta autonomia con ...
MSI PRO MAX: QD-OLED ultrawide per lavorare, creare e giocare MSI PRO MAX: QD-OLED ultrawide per lavorare, cre...
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
Recensione Mibro AeroPace: leggero nella...
La Russia sta perdendo la guerra dei dat...
Sconti Amazon aggiornati questa mattina:...
Robot aspirapolvere in offerta: Roborock...
MSI MAG a 99€ su Amazon: monitor gaming ...
Estinzione dell'umanità, ci sono ...
Torvalds ha provato l'AI e il primo risu...
Anthropic: meno dati sottratti a Claude,...
GlobalFoundries torna sui 7 nanometri, m...
VMware HyperArmor: una nuova protezione ...
AMD conferma una 'potenziale vulnerabili...
Arlo Pro 6 a 139€ su Amazon: telecamera ...
CPU più care, Intel aumenta fino ...
Fastweb ha lanciato l'opzione Fibra 10 G...
GeForce RTX 5080 da 24 GB: debutto nel p...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:23.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v