Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. Visual Studio 6.0
Errore connessione con un'applicazione Windows
sabato 19 giugno 2010 - 01.15
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
perla0279
Profilo
| Senior Member
274
messaggi | Data Invio:
sab 19 giu 2010 - 01:15
Ciao
Sto creando con Visual Studio 2005 un'applicazione Windows molto semplice utilizzando una finestra MDI come principale.
Questa applicazione si deve connettere ad un database, richiamando store procedure.
Ho un errore nella connessione.
MDI Principale:
Dim da As New SqlClient.SqlDataAdapter
Dim ds As DataSet = New DataSet
Dim dt As DataTableCollection
Public ConnectionString As String
Public objDB As System.Data.SqlClient.SqlConnection
Public Con_Dataset As New DataSet()
Private Sub MDIMose_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim DT As DataTableCollection
DT = LoadConfiguration(Application.StartupPath + "\Config.xml")
Try
ConnectionString = System.Convert.ToString(DT("configurazione").Rows(0)("ConnectionString"))
objdb = New System.Data.SqlClient.SqlConnection
objDB.ConnectionString = ConnectionString
objDB.Open()
--------------------------------------------- IN QUESTO PUNTO DA ERRORE
' Dim cmd As SqlClient.SqlCommand = New SqlClient.SqlCommand("SET LANGUAGE US_ENGLISH", objDB)
' cmd.CommandType = CommandType.Text
' cmd.ExecuteNonQuery()
Catch ex As Exception
MessageBox.Show("Manca il collegamento con il database!", "ATTENZIONE", MessageBoxButtons.OK, MessageBoxIcon.Stop)
End
End Try
End Sub
Private Shared Function LoadConfiguration(ByVal FilediConfigurazione As String) As DataTableCollection
Dim Configuration_Dataset As New DataSet()
Try
Configuration_Dataset.ReadXml(FilediConfigurazione)
Catch ex As Exception
Throw New ArgumentException("Err. Open config.xml")
End Try
Return Configuration_Dataset.Tables
End Function
File config:
<CONFIGURAZIONE>
<ConnectionString>Data Source=USER-xxxxxxxx;Database=xxxxxx;Integrated Security=True </ConnectionString>
</CONFIGURAZIONE>
Errore:
Si è verificato un errore mentre si cercava di stabilire una connessione con il server. Quando ci si connette a SQL Server 2005, questo errore potrebbe essere provocato dal fatto che l'SQL Server non ammette connessioni remote sotto le impostazioni predefinite. (provider: Provider Named Pipes, error: 40 - Impossibile aprire una connessione a SQL Server)
Non riesco a capire, premettendo che di solito sviluppo siti internet con .aspx, e uso sempre questa connessione che funziona.....
con questo tipo di applicativo non sò dove sbattere la testa..
jd_vv
Profilo
| Newbie
10
messaggi | Data Invio:
sab 19 giu 2010 - 18:24
Il server Sql è locale o remoto?
Nel secondo caso vanno verofocate le opzioni di sqlserver permettendo le connessioni remote e verificando che connessione tcpip sia attiva.
Attento che va riavviato il servizio per attivare le modifiche.
Digito ergo sum
perla0279
Profilo
| Senior Member
274
messaggi | Data Invio:
dom 20 giu 2010 - 09:27
Il server è locale.
Stò eseguendo il programma dal stesso pc dove risiede il database.
jd_vv
Profilo
| Newbie
10
messaggi | Data Invio:
dom 20 giu 2010 - 21:44
Sei sicuro che il nome del server nella stringa di connessione sia corretto?
Prova a sostituirlo con l'indirizzo ip o con (locahost)
Inoltre se il server sql è express devi usare nome-server\sqlexpress
Digito ergo sum
perla0279
Profilo
| Senior Member
274
messaggi | Data Invio:
lun 21 giu 2010 - 07:25
Ci deve essere qualcosa che non funziona sulla stringa di connessione.....
Ho installato un database prova Express, l'istanza che avevo messo è USER-A8B5D484C9\SQLEXPRESS, il database è in locale sulla macchina
Non ho molta esperienza quindi non riesco a capire se è sbagliato il codice che richiama la stringa, oppure il config...
jd_vv
Profilo
| Newbie
10
messaggi | Data Invio:
lun 21 giu 2010 - 09:14
io uso questa function, se vedi la sicurezza è impostata su SSPI e non a true come nel tuo caso, per il resto è tutto uguale.
Private Function GetConnectionString(ByVal strNomeSqlServer As String, ByVal strNomeSqldb As String) As String
Return "Data Source=" + strNomeSqlServer + ";Database=" + strNomeSqldb + ";Integrated Security=SSPI; Application Name = " & Application.ProductName
End Function
In alternativa esiste l'oggetto SqlClient.SqlConnectionStringBuilder che valorizzando in modo opportuno le property ti restituisce la stringa di connessione giusta
P.S.
Da SSMS riesci ad accedere al db vero?
Digito ergo sum
Torna su
Stanze Forum
Elenco Threads
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 !