0/5 (7 avis)
Snippet vu 14 386 fois - Téléchargée 32 fois
Imports Microsoft.Data.Odbc Imports System.Web ' ------------------------------------------------------------------------------------ Public Class ODBC_Requettes ' ------------------------------------------------------------------------------------ Public Shared Function MyODBCReader(ByVal ReqSQL As String, ByVal MaConnexionString As String) As OdbcDataReader ' Connexion à un server via ODBC avec requette qui renvoie un datareader Dim MyODBCConnexion As New OdbcConnection(MaConnexionString) Try Dim MyCommand As New OdbcCommand() Dim MyDataReader As OdbcDataReader MyODBCConnexion.ReleaseObjectPool() MyODBCConnexion.Open() MyCommand.Connection = MyODBCConnexion MyCommand.CommandText = ReqSQL MyDataReader = MyCommand.ExecuteReader(CommandBehavior.CloseConnection) MyODBCReader = MyDataReader MyODBCConnexion.ReleaseObjectPool() Catch MyOdbcException As OdbcException HttpContext.Current.Trace.Write(MyOdbcException.ToString) Catch MyException As Exception HttpContext.Current.Trace.Write(MyException.ToString) Finally If Not (MyODBCConnexion Is Nothing) Then MyODBCConnexion.Close() MyODBCConnexion = Nothing End If End Try End Function ' -------------------------------------------------------------------------- Public Shared Function MyODBCDataset(ByVal ReqSQL As String, ByVal MaConnexionString As String, ByVal NomDataTable As String) As DataSet ' Connexion à un server via ODBC avec le Driver ODBC 3.51 avec requette qui renvoie un dataset Dim MyODBCConnexion As New OdbcConnection(MaConnexionString) Try Dim ds As New DataSet() Dim cmd As OdbcDataAdapter = New OdbcDataAdapter(ReqSQL, MyODBCConnexion) Dim MyCommand As New OdbcCommand() Dim MyDataReader As OdbcDataReader cmd.Fill(ds, NomDataTable) Return ds Catch MyOdbcException As OdbcException HttpContext.Current.Trace.Write(MyOdbcException.ToString) Catch MyException As Exception HttpContext.Current.Trace.Write(MyException.ToString) Finally If Not (MyODBCConnexion Is Nothing) Then MyODBCConnexion.Close() MyODBCConnexion = Nothing End If End Try End Function ' ------------------------------------------------------------------------------------ Public Shared Function MyODBCExecute(ByVal ReqSQL As String, ByVal MaConnexionString As String) ' Connexion à un serveur via ODBC qui exécute une requette (insert, delete ou update) Dim MyODBCConnexion As New OdbcConnection(MaConnexionString) Try Dim MyCommand As New OdbcCommand() Dim MyDataReader As OdbcDataReader MyODBCConnexion.Open() MyCommand.Connection = MyODBCConnexion MyCommand.CommandText = ReqSQL MyCommand.ExecuteNonQuery() MyODBCConnexion.ReleaseObjectPool() Catch MyOdbcException As OdbcException HttpContext.Current.Trace.Write(MyOdbcException.ToString) Catch MyException As Exception HttpContext.Current.Trace.Write(MyException.ToString) Finally If Not (MyODBCConnexion Is Nothing) Then MyODBCConnexion.Close() MyODBCConnexion = Nothing End If End Try End Function ' ------------------------------------------------------------------------------------ End Class ================================== ' Pour utiliser cette classe il suffira donc de faire comme dans l'exemple suivant : Protected WithEvents DataGridResultats As System.Web.UI.WebControls.DataGrid .... Dim MaConnexionString As String = "DSN=MonDSN;uid=MonLogin;pwd=MonPass" Dim MaRequetteSQL As String = "SELECT * FROM MaTable;" Dim MaDatasetResultat As DataSet MaDatasetResultat = ODBC_Requettes.MyODBCDataset(MaRequetteSQL, MaConnexionString, "ListeResultats") DataGridResultats.DataSource = MaDatasetResultat.Tables("ListeResultats") DataGridResultats.DataBind() MaDatasetResultat.Dispose()
23 déc. 2003 à 16:10
Pour ceux qui ont pas installé ODBC.NET, changer les connections odbc par oledb... c trés bien aussi pour de l'access.
26 déc. 2003 à 16:00
23 févr. 2004 à 09:28
23 févr. 2004 à 23:28
Il me semble que c un truc du genre
if isdbnull(tonchamp) then...
F___
24 févr. 2004 à 11:20
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.