Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
vivo X300 Pro rappresenta un'evoluzione misurata della serie fotografica del produttore cinese, con un sistema di fotocamere migliorato, chipset Dimensity 9500 di ultima generazione e l'arrivo dell'interfaccia OriginOS 6 anche sui modelli internazionali. La scelta di limitare la batteria a 5.440mAh nel mercato europeo, rispetto ai 6.510mAh disponibili altrove, fa storcere un po' il naso
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-01-2006, 16:20   #1
Corvo80
Member
 
Iscritto dal: Dec 2004
Città: Treviso e Udine
Messaggi: 258
[Java] connessione ad un Data Base SQL Server

Premetto che il seguente codice non è mio: l'ho trovato in Internet. Ho installato le JDBC della Microsoft per SQL Server 2000 e ho aggiornato il CLASSPATH (credo, in realtà). Il problema è che ogni volta mi dà la stessa eccezione: "Could not find the database driver". Pensavo che l'indirizzo di registrazione dei driver fosse sbagliato ma ho controllato nella guida ufficiale e non è così. Per quanto riguarda l'indirizzo del server ci sono dati ipotetici non corrispondenti a nessun database esistente ma non è questo il problema, altrimenti mi darebbe un altro messaggio di errore...

Dove sto sbagliando?

Codice:
import java.sql.*;

public class SQLHere {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Connection connection = null;
	    try {
	    	String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
	        String serverName = "127.0.0.1";
	        String portNumber = "1433";
	        String mydatabase = serverName + ":" + portNumber;
	        String url = "jdbc:JSQLConnect://" + mydatabase; // a JDBC url
	        String username = "username";
	        String password = "password";
	    
	        // Load the JDBC driver
	        Class.forName(driverName);
	    
	        // Create a connection to the database
	        connection = DriverManager.getConnection(url, username, password);
	    } catch (ClassNotFoundException e) {
	        System.out.println("Could not find the database driver");
	    } catch (SQLException e) {
	    	System.out.println("Could not connect to the database");
	    }


	}

}
Corvo80 è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2006, 16:33   #2
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
ClassNotFoundException?
penso che tu non abbia aggiunto correttamente al classpath il driver.
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2006, 16:34   #3
Corvo80
Member
 
Iscritto dal: Dec 2004
Città: Treviso e Udine
Messaggi: 258
A quanto pare non sono affatto sicuro di aver aggiornato il CLASSPATH... qualcuno mi spiega come si fa?

Corvo80 è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2006, 16:41   #4
Corvo80
Member
 
Iscritto dal: Dec 2004
Città: Treviso e Udine
Messaggi: 258
Scusate, ho risolto!

(dovrei proprio imparare ad avere più pazienza, vero?)
Corvo80 è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2006, 19:51   #5
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da Corvo80
Scusate, ho risolto!

era quello?
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 20-01-2006, 14:36   #6
Corvo80
Member
 
Iscritto dal: Dec 2004
Città: Treviso e Udine
Messaggi: 258
Ovviamente sì... cmq ora ho un nuovo problema: riesco a connettermi ad un database remoto ma se tento di connettermi ad un database locale mi dà eccezione "Could not connect to the database".

Tengo a precisare che ho modificato il codice:

Codice:
import java.sql.*;

public class SQLHere {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Connection connection = null;
	    try {
	    	String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
	        String username = "username";
	        String password = "password";
	    
	        // Load the driver
	        Class.forName(driverName);
	    
	        // Create a connection to the database
	        connection = DriverManager.getConnection("jdbc:microsoft:sqlserver://locale:1433;DatabaseName=database01", username, password);
	    } catch (ClassNotFoundException e) {
	        System.out.println("Could not find the database driver");
	    } catch (SQLException e) {
	    	System.out.println("Could not connect to the database");
	    }
	}
}
NB I campi user, pass e l'indirizzo e nome del database sono fittizi ma nella mia macchina ho provato (ovviamente) con quelli veri.

Dove potrebbe stare l'errore? Forse gli dà fastidio che sia locale? Possibile?

Ultima modifica di Corvo80 : 20-01-2006 alle 14:56.
Corvo80 è offline   Rispondi citando il messaggio o parte di esso
Old 21-01-2006, 09:15   #7
Zeus84
Senior Member
 
Iscritto dal: Dec 2002
Città: Bologna
Messaggi: 483
Normalmente non dovrebbero esserci problemi se il database è locale..l'unico dubbio che mi sorge è che alcuni database hanno driver distinti nel caso in cui ti stia colleganto ad un database locale o ad uno remoto...controlla se nel tuo caso è così..
Un'altro possibile dubbio: hai dei firewall attivi sul pc?
__________________
Acer TravelMate 8103Wlmi
Zeus84 è offline   Rispondi citando il messaggio o parte di esso
Old 21-01-2006, 16:57   #8
Cryingcrow
Senior Member
 
L'Avatar di Cryingcrow
 
Iscritto dal: Mar 2004
Messaggi: 502
Magari al posto di "locale" va "localhost" (o 127.0.0.1)? o la tua macchina si chiama locale

connection = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=database01", username, password);

Poi ti conviene stampare direttamente l'eerore che magari si capisce dov'è che sbagli...

catch (SQLException e) {
e.printStackTrace(); <--nn sono sicuro sia così però è na roba simile
}


P.S. potrebbbero essere tutte cagate
Cryingcrow è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2006, 14:31   #9
Corvo80
Member
 
Iscritto dal: Dec 2004
Città: Treviso e Udine
Messaggi: 258
Quote:
Originariamente inviato da Cryingcrow
Magari al posto di "locale" va "localhost" (o 127.0.0.1)? o la tua macchina si chiama locale
Evidentemente ti è sfuggita la mia nota...

x Zeus: grazie ora provo...
Corvo80 è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2006, 15:00   #10
Corvo80
Member
 
Iscritto dal: Dec 2004
Città: Treviso e Udine
Messaggi: 258
Nisba: nè l'uno nè l'altro. L'eccezione che mi dà il compilatore è

[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.

Ma ho verificato:

a) Il nome del PC è esatto e la macchina lo pinga.
b) Il protocollo TCP/IP è enabled.
c) La porta è corretta.
d) Il database server è avviato (tant'è che riesco ad accedervi tranquillamente con qualunque altro applicativo).
e) User e Password sono esatti, li ho verificati tramite altri mezzi.


... ma cosa cavolo succede?!!!
Corvo80 è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2006, 23:12   #11
Cryingcrow
Senior Member
 
L'Avatar di Cryingcrow
 
Iscritto dal: Mar 2004
Messaggi: 502
Ops sorry, non avevo letto la nota in fondo..

Ho letto che il problema potrebbe essere proprio il nome della macchina, prova a inserire l'ip direttamente del pc...

forse qua trovi qualcosa http://forum.java.sun.com/thread.jspa?threadID=419214 è la prima cosa che mi è uscita cercando il tuo errore su gugol (e dove ho letto dell'ip..)

byez
Cryingcrow è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2006, 08:30   #12
Corvo80
Member
 
Iscritto dal: Dec 2004
Città: Treviso e Udine
Messaggi: 258
Quote:
Originariamente inviato da Cryingcrow
Ops sorry, non avevo letto la nota in fondo..

Ho letto che il problema potrebbe essere proprio il nome della macchina, prova a inserire l'ip direttamente del pc...

forse qua trovi qualcosa http://forum.java.sun.com/thread.jspa?threadID=419214 è la prima cosa che mi è uscita cercando il tuo errore su gugol (e dove ho letto dell'ip..)

byez
No il nome della macchina non può essere dato che lo pinga e che se provo con un altro server (sempre specificando il nome) funziona. Ho provato anche con l'indirizzo IP ma non c'è niente da fare...

BOH?!!!
Corvo80 è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2006, 14:24   #13
Corvo80
Member
 
Iscritto dal: Dec 2004
Città: Treviso e Udine
Messaggi: 258
Uppo nella speranza che qualcuno possa avere un'illuminazione...

Corvo80 è offline   Rispondi citando il messaggio o parte di esso
Old 05-04-2006, 17:22   #14
ginogino65
Senior Member
 
Iscritto dal: Aug 2005
Città: Aulla (MS)
Messaggi: 1327
Quote:
Originariamente inviato da Corvo80
Uppo nella speranza che qualcuno possa avere un'illuminazione...

Credo di avere trovato il problema.

Il drive jdbc di microsoft per sql server non supporta le trusted SQL Server connection, trovi maggiori dettagli qui:

http://support.microsoft.com/default...b;en-us;313100

con il codice della prima pagina modificando la connessione in questo modo:

connection = DriverManager.getConnection("jdbc:microsoft:sqlserver://192.168.1.60:1433;DatabaseName=Archivio;user=pippo;password=cane");

il codice funziona, purtruppo l'utente pippo deve essere un utente di Sql server e non facente parte di un dominio.
ginogino65 è offline   Rispondi citando il messaggio o parte di esso
Old 06-04-2006, 19:21   #15
ginogino65
Senior Member
 
Iscritto dal: Aug 2005
Città: Aulla (MS)
Messaggi: 1327
Quote:
Originariamente inviato da ginogino65
Credo di avere trovato il problema.

Il drive jdbc di microsoft per sql server non supporta le trusted SQL Server connection, trovi maggiori dettagli qui:

http://support.microsoft.com/default...b;en-us;313100

con il codice della prima pagina modificando la connessione in questo modo:

connection = DriverManager.getConnection("jdbc:microsoft:sqlserver://192.168.1.60:1433;DatabaseName=Archivio;user=pippo;password=cane");

il codice funziona, purtruppo l'utente pippo deve essere un utente di Sql server e non facente parte di un dominio.

Ho trovato un driver jdbc open source qui:

http://jtds.sourceforge.net/

con questo driver sono riuscito ad avere una connessione trusted utilizzando un utente del dominio, il codice è questo:

import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.Date;
import java.sql.SQLException;

public class TestConnessione {
public static void main(String args[]) {

// TODO Auto-generated method stub
Connection connection = null;
try {
// String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String driverName = "net.sourceforge.jtds.jdbc.Driver";
String serverName = "192.168.1.60";
String nomedatabase = "Archivio";
String portNumber = "1433";
String mydatabase = serverName + ":" + portNumber;
String nomedominio = "CICERONE";
String url = "jdbc:jtds:sqlserver://" + mydatabase + ";Database=" + nomedatabase + ";domain=" + nomedominio; // a JDBC url
String username = "ginogino";
String password = "federica74942";

// Load the JDBC driver
Class.forName(driverName);

// Create a connection to the database
connection = DriverManager.getConnection(url, username, password);


// Execute a query
Statement stmt = connection.createStatement();
String sql;
sql="SELECT CODFISC, COGNOMENOME FROM tbPersonale order by COGNOMENOME;";
ResultSet rs = stmt.executeQuery(sql);

// Estrazione Dati
while(rs.next() ) {

// Legge i valori
String CODFISC = rs.getString("CODFISC");
String COGNOMENOME = rs.getString("COGNOMENOME");

// Visualizza i dati
System.out.print("Codice Fiscale: " + CODFISC );
System.out.println("Cognome e Nome: " + COGNOMENOME );

}



} catch (ClassNotFoundException e) {
System.out.println("Could not find the database driver");
} catch (SQLException e) {
System.out.println("Could not connect to the database");
}


}
}
ginogino65 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria Recensione vivo X300 Pro: è ancora lui il...
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
Roborock Q10 S5+ a un super prezzo: robo...
Formula sceglie WINDTRE BUSINESS per gar...
EXPO 1.20: AMD migliora il supporto all'...
MacBook Pro con chip M4, 24GB di RAM e 1...
Lefant M330 da 6.000Pa a 139€ o ECOVACS ...
Tornano gli sconti anche sulle scope ele...
Le scope elettriche Dreame H12, H14 e H1...
Il nucleo della cometa interstellare 3I/...
La Russia potrebbe sviluppare un'arma pe...
Manda la RAM Corsair in assistenza, rice...
ASUS ROG G1000 con 'AniMe Holo': saranno...
Un test di longevità ha messo alla prova...
Incat inizia i test dell'incredibile tra...
LG Sound Suite: al CES il sistema audio ...
Avengers Doomsday, il primo trailer &egr...
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:26.


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