Problema connessione sql server jdbc

mercoledì 02 settembre 2009 - 17.49

smfmazz Profilo | Newbie

Ciao a tutti! Mi chiamo Mirko e sono nuovo. Ho un problema con sql server 2005.
Sto facendo un programma java in eclipse che si connette con un database creato con sql server management studio.
Per effettuare la connessione ho utilizzato e installato gli appositi driver jdbc. Il problema è che mi effettua la connessione ma mi dice "Invalid Object name UtentiCasa". Il codice cmq è questo:

try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//si carica il driver
}
catch (ClassNotFoundException exc){
System.out.println("Errore: Driver jdbc non presente "+exc.getMessage());
}

try {

String url = "jdbc:sqlserver://192.168.0.252"; //"jdbc:odbc:dati";
String user = "sa"; //"utente";
String passwd = "prova"; //"password";
Connection con = DriverManager.getConnection(url, user, passwd);

Statement CASADISCOGRAFICA = con.createStatement();
ResultSet r = CASADISCOGRAFICA.executeQuery("SELECT * FROM UtentiCasa WHERE "+
"(NomeUtente = UserName) and (Password = Password)");// // si esegue la query
if (r.next())
{// se la query produce almeno una riga allora ....
String ruolo = r.getString("TipoUtente");
System.out.println(ruolo);

}

}

catch (SQLException exc1)
{System.out.println("Errore nell'Inserimento dei Dati" +
exc1.getMessage());
}

In pratica non mi trova la tabella Utenti Casa. Stavo pensando inoltre (magari è una domanda stupida), ma quando faccio la connessione e mi connetto all'istanza di default (che contiene diversi database) come fa il programma a capire su quale database deve connettersi???
Spero di essere stato chiaro!

lbenaglia Profilo | Guru

>In pratica non mi trova la tabella Utenti Casa. Stavo pensando
>inoltre (magari è una domanda stupida), ma quando faccio la connessione
>e mi connetto all'istanza di default (che contiene diversi database)
>come fa il programma a capire su quale database deve connettersi???
Devi specificarlo nella connection string
In questo articolo della Knowledge Base trovi un esempio:
http://support.microsoft.com/kb/313100/en-us

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

smfmazz Profilo | Newbie

Grazie Benaglia! Ora la connessione la fa ed esegue anche la query! Però non mi funziona se provo a prendere dentro dei dati da un jtext. Mi spiego meglio:

UserName=txt1.getText();
Password=txt2.getText();
System.out.println(txt1.getText()); //non mi stampa niente!!!!!

nella query invece, ha senso scrivere così:

ResultSet r = CASADISCOGRAFICA.executeQuery("SELECT * FROM UtentiCasa WHERE "+
"(NomeUtente = UserName)");

UserName è una variabile public, mentre txt1 è definita solamente nella classe dove faccio la finestra

lbenaglia Profilo | Guru

>Grazie Benaglia! Ora la connessione la fa ed esegue anche la
>query! Però non mi funziona se provo a prendere dentro dei dati
>da un jtext.
Mi spiace, non sono un Java Dev

Ciao!

--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

smfmazz Profilo | Newbie

Grazie comunque, ho già risolto! Ovviamente era una cavolata dovuta ad una disattenzione!!!

Ciao!!!
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5