Problemi con il fileBrowseDialog e connessione Db

venerdì 17 aprile 2009 - 19.11

sergio.mitrione Profilo | Junior Member

Ciao a tutti,
ho inserito in una form un FileBrowseDialog..questo funziona correttamente ma dopo
mi si verifica nell'apertura della connessione al DB (essattamente al conn.open())...
sapete per caso dirmi cosa possa essere successo?

grazie a tutti

R3GM4ST3R Profilo | Junior Member

Ciao!
Non è chiarissimo...potresti spiegarti meglio?


Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (Albert Einstein)

sergio.mitrione Profilo | Junior Member

Allora... tramite un pulsante apro un fileBrowseDialog e fin qui tutto bene... seleziono il file e chiudo...
e fin qua tutto ok...
Il problema nasce dopo ... devo aprire una connessione in cui deve prendere i dati presi da questo file
e immagazzinarli nel db... ma mi da un errore nell'apertura della connessione!!!

R3GM4ST3R Profilo | Junior Member

Che tipo di database stai usando??
Access, SQLServer, Mysql...???
VB o C#??

Posta il codice di come istanzi la connessione...Così posso aiutarti!

Sarebbe di aiuto anche l'errore che ti da quando apri la connessione.
Catturalo tramite un try catch e posta il messaggio dell'eccezione.

Ciao!

Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (Albert Einstein)

sergio.mitrione Profilo | Junior Member

Ciao...sto utilizzando un un DB Access...
in quest'immagine trovi l'errore


776x215 65Kb


questo è il semplice codice che uso per richiamare il filedialog

With OpenFileDialog1
.ShowDialog()

End With

R3GM4ST3R Profilo | Junior Member

Ciao!
Non mi hai scritto la tua stringa di connessione al database, cmq fa lo stesso, quì un esempio :

Public s_strDB_ConnectionString As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Chr(34) & My.Application.Info.DirectoryPath & "\Database.accdb" & Chr(34) & ";Persist Security Info=True"

private sub DBWrite(s_strMessage as string)
Dim CN As New OleDb.OleDbConnection(s_strDB_ConnectionString)
Dim CMD As New OleDb.OleDbCommand("INSERT INTO TABELLA (TEXT)VALUES('" & Replace(s_strMessage, "'", "''") & "')", CN)
Try
CN.Open()
CMD.ExecuteNonQuery()
If CN.State = ConnectionState.Open Then
CN.Close()
End If
frmMain.CacheDeviceFromDB()
Catch ex As Exception

End Try
End sub

Ad ogni modo, il tuo programma non trova un file, e credo proprio si tratti del database, quindi prova a verificare se hai il database nella directory di output del progetto (nella cartella bin\debug per intenderci), in caso negativo copialo, o meglio imposta visual studio in in modo che lo copi automaticamente, selezionando il database dalla finestrella di esplora soluzioni, nelle proprietà del database, seleziona "copia nella directory di output" (o roba simile)

Prova e fam sapè!


Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (Albert Einstein)

sergio.mitrione Profilo | Junior Member

Ciao R3GM4ST3R,
anche io ho pensato che non trovasse il DB ma ti assicuro che il DB c'è!!!

R3GM4ST3R Profilo | Junior Member

beh il database ci sarà anche, ma stai tentando di aprire un qualcosa che si chiama "(sconosciuto)" non credo sia corretto!

Ma dove capita qeusto errore, sul tuo pc di sviluppo o sul pc dove hai installato l'applicazione?


Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (Albert Einstein)

sergio.mitrione Profilo | Junior Member

ho risolto lo stesso grazie...
ho aggiunto System.IO.Path.GetFullPath("nome_db") nella connectionstring
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