Scusate ma in cosa sbaglio

venerdì 15 aprile 2005 - 13.56

Semerket Profilo | Newbie

Ho scritto questo in form.vb

Imports System.Data.Odbc
Public Class frmLogin

Inherits System.Windows.Forms.Form

Private Sub frmLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim connStr As New OdbcConnection("Dsn=HorusQuality;" & _
"Uid=SYSDBA;" & _
"Pwd=masterkey")
connStr.Open()
Dim da As New OdbcDataAdapter("SELECT * FROM tblUtente", connStr)
Dim ds As New DataSet("Utente")
da.Fill(ds, "tblUtente")
DataGrid1.DataSource = ds.DefaultViewManager
connStr.Close()
End Sub
End Class

Mi restituisce questo errore:
Eccezione non gestita di tipo "System.Data.Odbc.OdbcException" in system.data.dll

Informazioni aggiuntive: Errore di sistema.

Mi sapete aiutare

Semerket Profilo | Newbie

Niente da fare mi da ancora lo stesso errore e me lo dà
sulla riga - da.Fill(ds, "tblUtente") -

Cosa devo fare?????

Grazie a tutti

Cteniza Profilo | Guru

Devi verificare la connessione.
Perchè usi odbc? non esiste un driver nativo?

Semerket Profilo | Newbie

Ho scaricato il .net provider di Firebird
ma non so come si usa perché ho provato
da varie documentazione ma non si capisce un
granché.
Qualcuno mi può aiutare?

Grazie cmq a tutti.

Cteniza Profilo | Guru

Ho questo esempio; magari ti è utile

Imports FirebirdSql.Data.Firebird
------

Public Shared ConnStr As String
Public Shared Conn As FbConnection
Public Shared Txn As FbTransaction
Public Shared selectCmd As String
Public Shared Command As FbCommand
Public Shared Reader As FbDataReader

------

Private Sub Form1_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Connect()
fillGrid()
End Sub

Sub Connect()
ConnStr = "Database=" & txtDbPath.Text &
";User=SYSDBA;Password=masterkey;Dialect=3;Server=localhost;Pooling=False"
Conn = New FbConnection(ConnStr)
Conn.Open()
Txn = Conn.BeginTransaction()
End Sub

Sub fillGrid()
Dim dataAdapter As FbDataAdapter
Dim ds As New DataSet
Connect()
Try
dataAdapter = New FbDataAdapter
selectCmd = "Select * from Artikel"
Command = New FbCommand(selectCmd, Conn, Txn)
dataAdapter.SelectCommand = Command
dataAdapter.Fill(ds, "Artikel")
dgArtikel.DataSource = ds.Tables("Artikel")
'Dim col As DataColumn
'For Each col In ds.Tables(0).Columns
' MsgBox(col.ColumnName)
'Next
dataAdapter.Dispose()
Txn.Dispose()
Command.Dispose()
Conn.Close()

Catch Exp As FbException
MsgBox(Exp.Message)
Txn.Dispose()
Command.Dispose()
Conn.Close()
Exit Sub
End Try

End Sub

Semerket Profilo | Newbie

Ti ringrazio tanto per l'aiuto. Il codice va bene e fa proprio al caso
mio anche se voglio portale la stringa di connessione in un modulo
generale del progetto. Ora devo solo vedere come fare per verificare
l'esistenza di un record nella tabella, per creare un form login.
Vedo che ci sai fare con il Firebird e mi sa che ti scoccerò altre volte.

Grazie.
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-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5