Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-01-2006, 15: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, 15: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, 15: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, 15: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, 18: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, 13: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 13:56.
Corvo80 è offline   Rispondi citando il messaggio o parte di esso
Old 21-01-2006, 08: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, 15: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, 13: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, 14: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, 22: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, 07: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, 13: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, 16:22   #14
ginogino65
Senior Member
 
Iscritto dal: Aug 2005
Città: Aulla (MS)
Messaggi: 1352
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, 18:21   #15
ginogino65
Senior Member
 
Iscritto dal: Aug 2005
Città: Aulla (MS)
Messaggi: 1352
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


Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Intel e SK hynix al tavolo per un'allean...
Osservare la Luna con la NASA, anche in ...
Wallbox per auto elettriche su Amazon: d...
Il mistero della stagione degli uragani ...
La Corte di Cassazione affida i ricorsi ...
Tutti i nuovi prodotti Apple prenotabili...
DDR5, un kit da 598 a 1.215 euro in un m...
Portatile ASUS Vivobook 14 a 837,95€: AM...
Sparita da anni, AppZapper torna nel 202...
Revolut, la truffa dei dati è partita da...
Geely E2: abbiamo visto dal vivo la regi...
HUAWEI Mate XT 2, importarlo dalla Cina ...
Orpheus, la calza smart che usa la music...
La causa antitrust di Musk contro Apple ...
Nitter archiviato e XCancel sospeso tre ...
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:54.


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